Python编程基础

Python是一种简单易学的编程语言,广泛应用于Web开发、数据分析、人工智能等领域。无论您是初学者还是有一定编程经验的人士,都可以从Python的基础知识开始建立自己的编程技能。

目录

  • 理论
    • Python语言的发展
    • 程序设计语言的分类
    • 静态语言与脚本语言的区别
  • 代码编写
    • IPO程序编写方法
    • 输出函数print
    • 输入函数input
    • Python中的注释与缩进

理论

Python语言的发展

Python语言的发明人—吉多.范罗苏姆(荷兰人)。

Python语言具有丰富和强大的库,能够把使用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。

Python语言又被成为胶水语言,因为它能够把使用其他语言制作各种模块轻松的联合在一起。

  1. Python语言是在1989年诞生的,但是最早的可用版本诞生于1991年,在之后的近20年间又经历了Python2到Python3的演化过程。
  2. 2000年10月,Python2.0版本发布,开启了Python广泛应用的新时代。
  3. 2010年,Python2.x系统发布了最后一个版本,主版本号为2.7,用于终结2.x系列版本的的发展,并且不再进行重大改进。
  4. 2008年12月,Python3.0版本发布,这个版本的解释器内部完全采用面向对象方式实现,在语法层面做了很多重大改进。
  5. 2016年,所有Python重要的标准库和第三方库都已经在Python3.x版本下进行演进和发展。Python语言版本升级过程宣告结束。

在这里插入图片描述

  1. Python的应用领域
  2. Web开发:Python语言在Web开发上有Django、Flask、Tornado等众多框架的支持。
  3. 数据分析与科学计算:在数据分析和科学计算方面,Python有着众多的第三方库的支持,比如Numpy、Pandas、Matplotlib等。
  4. 人工智能和机器学习:Python中的第三方库Tensorflow、Keras、PyTorch等可以快速的实现模型构建、训练和部署。
  5. 自动化测试和运维:第三方库Selenium在自动化测试和运维领域发挥着举足轻重的作用,自动化测试已经成为测试工程师必备的技能之一了。
  6. 网络爬虫:随着大数据和数据挖掘的兴起,爬虫这项技术在互联网中发挥了非常重要的作用,它以速度快的特点可以在互联网上爬取大量的数据。
  7. 游戏开发:Python在游戏领域也有很多的应用,例如《文明6》就是使用Python语言编写的。
  • Python的开发工具
  1. PyCharm

在这里插入图片描述

程序设计语言的分类

  • 程序设计语言

什么程序设计语言呢?它是指计算机能够识别和理解用户操作意图的一种交互体系,说白了就是用户与计算机之间能够达成沟通的语言,它是按照特定规则组织的计算机指令,而这些指令可以让计算机能够自动执行各种运算操作。

  1. 机器语言:是一种二进制语言,它直接使用二进制代码表达指令,是计算机硬件可以直接识别和执行的程序设计语言。
  2. 汇编语言:使用方便助记符与机器语言中的指令一一对应。
  3. 高级语言:是接近自然语言的一种计算机程序设计语言,Python、Java都是高级语言。

静态语言与脚本语言的区别

  • 编译型

编译型是指将源代码转换成目标代码的过程,通常源代码是高级语言代码,目标代码是机器语言代码,执行编译的计算机程序称为编译器。

在这里插入图片描述

  • 解释型

解释型是将源代码逐条转换成目标代码的过程,执行解释的计算机程序称为解释器(Interpreter)。解释型的可移植性会好一点,缺点就是需要始终保存好源代码,源代码丢失了就无法运行程序了。

在这里插入图片描述
采用编译型方式执行的语言就成为静态语言,Java就是静态语言,采用解释方式执行的语言就是脚本语言,Python、Javascript、PHP都是脚本语言。

代码编写

IPO程序编写方法

Input是输入、Process是处理、Output是输出

在这里插入图片描述

输出函数print

语法结构

print(输出内容)

在Python当中,可以使用内置的print函数进行程序的输出操作,也就说它是IPO操作当中的O,output;输出的内容可以是数字,可以是字符串,如果是字符串的话,需要使用引号引起来。

选择文件夹,新建一个Python文件

在这里插入图片描述
在这里插入图片描述

先定义几个变量,再通过print函数进行演示输出

在这里插入图片描述

a=100 # 定义变量a,值为100
b=50 # 定义变量b,值为50
print(886)
print(a) # 实际上输出的变量的值
print(a+b) # 输出a和b的运算结果
print('摔跤猫子')
print("摔跤猫子")
print('''摔跤猫子''')
print("""摔跤猫子""")

右键运行可以看到在控制台对变量以及运算结果都进行了输出,当输出结果是字符串时使用单引号、双引号、三单引号、三双引号都是可以的。

在这里插入图片描述

如果想一次输出多个内容且不换行该如何实现呢?可以使用英文的半角逗号将输出的内容进行分隔。

在这里插入图片描述

print(a,b,'摔跤猫子')

使用print函数输出ASCII码对应的字符

在这里插入图片描述

# 示例3 输出ASCII码对应的字符
print('b') # 直接输出了b
print(chr(98)) # 也输出了b 使用chr将98转换成ASCII表中的字符

使用print函数输出中文Unicode码

在这里插入图片描述

# 使用print函数输出中文Unicode码
print(ord('摔'))
print(ord('跤'))
print(ord('猫'))
print(ord('子'))

也可以使用chr函数再转回去,编码与字符之间是一对一的关系。

在这里插入图片描述

# 转回去
print(chr(25684))
print(chr(36324))
print(chr(29483))
print(chr(23376))

使用print函数将内容输出到文件

fp=open('note.txt','w') # 打开文件,这里w指的是write,写的意思
print('摔跤猫子',file=fp) # 将摔跤猫子这几个字写入到note.txt文件中
fp.close() # 关闭文件

运行函数后会在该目录下生成一个文件
在这里插入图片描述
以GBK重新加载即可显示

在这里插入图片描述
在这里插入图片描述
print()函数完整格式:

print(value,...,sep='',end='\n',file=None)

不换行一次输出多个数据的时候,中间的空格是如何产生的呢?
它就是由print函数当中的sep所产生的叫分隔符

在这里插入图片描述

每次输出完下方都有空行,这是因为print函数中\n的决定。

在这里插入图片描述
如果指定end参数的数据,则不会输出空行

print('摔跤',end='-->')

在这里插入图片描述

多条print函数输出,结果一行显示

在这里插入图片描述

print('摔跤',end='-->')
print('猫子')

在进行输出的时候,还可以使用加号连接两个字符串,在连接的过程中,只能是字符串与字符串连,否则是会报错的

在这里插入图片描述
在这里插入图片描述

输入函数input

在这里插入图片描述
在这里插入图片描述

name=input('请输入您的昵称:')
print('您输入的昵称为:'+name)

使用int将数据转换,下图可以看到当转换成功后是无法用加号对它们进行连接的,所以使用逗号在同一行进行输出即可。

在这里插入图片描述
在这里插入图片描述

Python中的注释与缩进

程序员在代码中对代码功能解释说明的标注性文字,可以提高代码的可读性,注释的内容奖杯Python解释器忽略,不被计算机执行,注释又包括单号注释、多行注释和中文声明注释。

在这里插入图片描述

# coding=utf-8
# 这是中文声明注释,它一定要写在第一行# 这是单行注释'''
这是多行注释
'''"""
这也是多行注释
"""

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/174207.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Allegro层叠中的介电常数如何填写指导说明

Allegro层叠中的介电常数如何填写指导说明 在用Allegro进行PCB设计的时候,需要在cross-section中设置好每个层的信息,包括层命名,每层的厚度等等信息。如下图 一般来说,这些信息就足够了 但是对于有仿真需求或者等长设计需要使用ps作为延时单位的设计的时候,需要额外在层…

JVM基础篇:垃圾回收

1.前言 1.1C/C的内存管理 在C/C这类没有自动垃圾回收机制的语言中,一个对象如果不再使用,需要手动释放,否则就会出现内存泄漏。我们称这种释放对象的过程为垃圾回收,而需要程序员编写代码进行回收的方式为手动回收。内存泄漏指的…

Express内置的中间件

自Express 4.16.0 版本开始,Express 内置了3个常用的中间件,极大的提高了 Express 项目的开发效率和体验: 1.express.static 快速托管静态资源的内置中间件,例如: HTML 文件、图片、CSS 样式等 (无兼容性) 2.express.json 解析JSON 格式的请…

6.12找树左下角的值(LC513-M)

算法: 这道题适合用迭代法,层序遍历:按层遍历,每次把每层最左边的值保存、更新到result里面。 看看Java怎么实现层序遍历的(用队列): /*** Definition for a binary tree node.* public clas…

C++——解锁string常用接口

本篇的内容是记录使用string接口的测试与使用,方便后续使用时查阅使用 首先介绍 string::npos; size_t(无符号整型)的最大值。NPOS 是一个静态成员常量值,具有 size_t 类型元素的最大可能值。当此值用作字符串成员函数中 len&am…

Linux多路转接select,poll

文章目录 目录 文章目录 一、五种IO模型 1.阻塞IO: 2.非阻塞IO 3.信号驱动IO 4.IO多路转接 5.异步IO 二、高级IO的一些重要概念 1.同步通信和异步通信 2.阻塞和非阻塞 三、其他高级IO 四、非阻塞IO 1.fctl函数 2.实现setNoBlock函数,将文件描述符设置…

D365 CRM Power Platform 后端开发概览

博主十年前写的后端技术文章大部分都out-of-date啦,有些东西还能在PP系统中继续沿用,大部分东西都变成old fashion了。 博主后续争取多找些时间,将之前的后端开发文档都翻新一遍,争取与时俱进,让它们还能继续使用下个…

C++const指针的两种用法

const int *p &a; 指向const变量的指针 指向const变量的指针const修饰的变量,只能由指向const变量的指针去指向 p &a1;const的位置,必须在*的左边指向const变量的指针,可以被改变,可以指向别的变量可以指向普通变量&am…

好玩的调度技术-生成式三维技术

好玩的调度技术-生成式三维技术 文章目录 好玩的调度技术-生成式三维技术前言一、效果图?二、技术实现系列文章链接其他文章新篇章 前言 目前休息了,预计休息半年,这半年里只会零星更新一些好玩的技术,感觉好玩系列都快成系列文章…

css之fade 动画效果

1.transition-group transition-group官方文档<TransitionGroup> 是一个内置组件&#xff0c;用于对 v-for 列表中的元素或组件的插入、移除和顺序改变添加动画效果。 2.代码 <div class"senior-panel"><transition-group name"fade">&…

九、基础算法精讲:动态规划二

目录 一、状态机DP1.1 买卖股票的最佳时机 II&#xff08;不限制交易次数&#xff09;1.2 买卖股票的最佳时机含冷冻期1.3 买卖股票的最佳时机 IV1.4 买卖股票的最佳时机含手续费 二、区间DP2.1 最长回文子序列2.2 多边形三角剖分的最低得分2.3 由子序列构造的最长回文串的长度…

详解如何使用VSCode搭建TypeScript环境(适合小白)

搭建Javascript环境 因为TypeScript不能直接在浏览器上运行。它需要编译器来编译并生成JavaScript文件。所以需要首先安装好javascript环境&#xff0c;可以参考文章&#xff1a; 详解如何使用VS code搭建JavaScript环境&#xff08;适合小白&#xff09;_vscode配置javascri…

LeetCode Hot100 437.路径总和III

题目&#xff1a; 给定一个二叉树的根节点 root &#xff0c;和一个整数 targetSum &#xff0c;求该二叉树里节点值之和等于 targetSum 的 路径 的数目。 路径 不需要从根节点开始&#xff0c;也不需要在叶子节点结束&#xff0c;但是路径方向必须是向下的&#xff08;只能从…

不可错过的设计工具!7款亲测好用的网页设计工具推荐!

网页设计并不容易&#xff0c;易于使用的网页设计工具更难找到。随着网络的快速发展&#xff0c;网站迅速崛起&#xff0c;网页设计也很流行。本文收集了 7 种良心和易于使用的网页设计工具&#xff0c;每一种近年来都受到网页设计师的广泛欢迎&#xff0c;以确保实用和易于使用…

抵御代码重用攻击:指针认证(PAC)和分支目标识别(BTI)

目录 一、代码重用攻击历史 二、小工具(Gadgets):它们是什么?为什么它们很危险? 三、ROP攻击

前端技术探秘-Nodejs的CommonJS规范实现原理 | 京东物流技术团队

了解Node.js Node.js是一个基于ChromeV8引擎的JavaScript运行环境&#xff0c;使用了一个事件驱动、非阻塞式I/O模型&#xff0c;让JavaScript 运行在服务端的开发平台&#xff0c;它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。Node中增添了很…

免费商用字体,进来领取!!!

如果你不知道去哪里找免费可商用字体&#xff0c;那一定要收藏好这几个网站&#xff0c;全部都是免费无版权字体&#xff0c;以后再也不用担心侵权问题了。 1、免费字体网 https://font.sucai999.com/ 一个免费可商用字体搬运工&#xff0c;实时跟新市面上免费商用的字体。网站…

高性能无锁队列 moodycamel::ConcurrentQueue

在做一些服务器的架构设计的时候,你不得不考虑现成模型的设计,将不同的业务划分到不同的线程里,如何来调度这些任务是一个值得有经验的架构师需要思考的工作。 很多开发者一说到线程的任务调度就想到了线程池,给他创建一个线程池,多个线程不断地尝试获取任务的信号,一旦线…

国家万亿资金助力城市生命线城市内涝积水监测系统

自2023年年初以来&#xff0c;我国多个地区遭遇了洪涝、干旱、台风、风雹等灾害的侵袭&#xff0c;部分地区灾情严重&#xff0c;经济损失较大。为应对灾后恢复重建工作的艰巨任务&#xff0c;本次国债将主要投向灾后恢复重建以及提升防灾减灾救灾能力。其中&#xff0c;将全面…

12V 全桥驱动芯片GC9008,0.1A 持续驱动输出电流,可替代MX6208

GC9008 是一款 12V 全桥驱动芯片&#xff0c;为 摄像机、消费类产品提供高性价比的方案。能提供 0.1A 的持续输出电流。 可以工作在 4.5~15V 的电源电压上。 GC9008 具有 PW &#xff08; IN1/IN2 &#xff09;输入接口 , 与行业标准器件兼容. GC9008S 是 SOP8 封装&a…