文章目录
- 一.变量和类型
- 1.1 变量的定义
- 1.2 变量的语法
- 1.3使用变量
- 1.4变量的类型
- 二.动态类型特性
- 三.注释
- 3.1 Python的注释语法
- 四.输入和输出
- 4.1 通过控制台输出
- 4.2 通过控制台输入
- 五.运算符
- 5.1算术运算符
- 5.2关系运算符
- 5.3逻辑运算符
- 5.4赋值运算符
- 1.= 的使用
- 2.复合赋值运算符
- 六.顺序语句
- 七.条件语句
- 7.1语法格式
- 八.缩进和代码块
- 九.空语句pass
- 十.循环语句
- 10.1 while循环
- 10.2 for循环
- 10.3 continue
- 10.4 break
一.变量和类型
1.1 变量的定义
变量可以视为是一块能够容纳数据的空间,这个空间往往可以对应到"内存"这样的硬件设备上。
可以把内存想象成是一个宿舍楼,这个宿舍楼上有很多的房间,每个房间都可以存放数据
1.2 变量的语法
1.定义变量:
a=10- a为变量名,当我们创建很多个变量的时候,就可以用名字来进行区分
- =为赋值运算符,表示把等号右边的数据放到等号的左边的空间中
注意:变量的名字一定要遵守规则
硬性规则(必须遵守):
变量名由数字,字母和下划线构成
数字不能开头
变量名不能和关键字重复
变量名大小写敏感,num和Num是两个不同的变量名
软性规则(建议遵守):
变量名使用有描述性的单词来表示,尽量表达出变量的作用
一个变量名可以由多个单词组成,长一点没关系,但含义要清晰
当变量名包含多个单词的时候,建议使用驼峰命名法,除了首个单词外,剩下的单词首字母都大写
1.3使用变量
- 读取变量的值
a=10print(a)- 修改变量的值
a=10b=20# 此时 a 的值被修改为20了a=bprint(a)1.4变量的类型
Python变量的类型不需要显示指定,而是在赋值的时候确定
- 整数
a=10print(type(a))type和print类似,都是Python内置的函数,可以使用type来查看一个变量的类型
- 浮点数
b=0.5print(type(b))- 字符串
c='hello'b='lqn'print(type(c))print(len(c))# 此处是两个字符串相加,不能拿字符串和整数/浮点数相加print(c+b)在Python中,单引号’'和双引号""构成的字符串,没有区别.'hello’和"hello"是完全等价的,还可以使用len函数来获取字符串的长度,和使用+针对两个字符串进行拼接
- 布尔
布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假)
a=Trueb=Falseprint(type(a))print(type(b))二.动态类型特性
在Python中,一个变量是什么类型,是可以在"程序运行"过程中发生变化的,这个特性称为"动态类型"
a=10#这里a是整型print(type(a))# 这里a是字符串类型a="hello"print(type(a))动态类型是把"双刃剑",对于中小型程序,可以大大节约代码量,对于大型程序,提高了模块之间的交互成本
三.注释
注释是一种特殊的代码,能够起到解释说明的作用,帮助程序员理解代码的执行逻辑
3.1 Python的注释语法
- 注释行
# 这是一行注释- 文档字符串
使用三引号引起来的称为"文档字符串",也可以视为一种注释,可以包含多行内容,一般放在文件/函数/类的开头,“”"或’''均等价
""" 这是文档字符串 这是注释 """四.输入和输出
程序员需要和用户进行交互
- 用户把信息传递给程序的过程,称为:输入
- 程序把结果展示给用户的过程,称为:输出
输入输出的最基本的方法就是控制台,用户通过控制台输入一些字符串,程序再同各国控制台打印一些字符串
4.1 通过控制台输出
Python使用print函数输出到控制台
print("hello")不仅能输出一个字符串,还可以输出一个其他类型的变量
a=10print(a)b=Trueprint(b)更多的时候,前面希望能够输出的内容是混合了字符串和变量的
比如:输出:num =10
num=10print(f'num ={num}')注意:使用f作为前缀的字符串,称为f-string
里面可以使用{ }来嵌套一个其他的变量/表达式
4.2 通过控制台输入
Python使用input函数,从控制台读取用户的输入
num=input()print(f'你输入的整数是{num}')print(type(num))input的参数相当于一个"提示信息",也可以没有
input的返回值就是用户输入的内容,是字符串类型
例如:这里是进行字符串拼接,而不是算术运算
num1=input("请输入第一个整数:")num2=input("请输入第二个整数:")print(f'num1+num2 ={num1+num2}')
如果想要得到算数运算的结果,那么需要先转换类型,把字符串类型转换成整型或浮点型
num1=input("请输入第一个数:")num2=input("请输入第二个数:")num1=int(num1)num2=float(num2)print(f'num1+num2 ={num1+num2}')五.运算符
5.1算术运算符
像+ - * / % ** // 这种称为算数运算符
- 1./中不能用0作为除数,否则会抛异常
print(10/0)- 2.整数/整数 结果可能是小数,而不会截断
print(1/2)- 3.%是求余
print(7%2)- 4.**是求乘方,不光能算整数次方,还能算小数次方
print(4**2)print(4**0.5)- 5.//是取整除法(也叫地板除),整数除以整数,结果还是整数(舍弃小数部分),并向下取整,不是四舍五入
print(7//2)print(-7//2)5.2关系运算符
像< <= > >= == !=这一系列的运算符称为关系运算符,它们是在比较操作数之间的关系
- 1.如果关系符合,则表达式返回True,如果关系不符合,则表达式返回False
a=10b=20print(a<b)print(a<=b)print(a>b)print(a>=b)print(a==b)print(a!=b)- 2.关系运算符不光针对整数/浮点数进行比较,还能针对字符串进行比较
a='hello'b='world'print(a<b)print(a<=b)print(a>b)print(a>=b)print(a==b)print(a!=b)直接使用==或者!=即可对字符串内容判定相等
字符串比较大小规则是"字典序"
- 3.对于浮点数来说不要使用 == 判定相等
print(0.1+0.2==0.3)浮点数在计算机中的表示不是精确的,在计算过程中容易产生非常小的误差
例如:
print(0.1)print(0.2)print(0.3)print(0.1+0.2)正确的比较方式:不再严格的比较相等了,而是判定差值小于允许的误差范围
a=0.1+0.2b=0.3print(-0.000001<(a-b)<0.000001)5.3逻辑运算符
像 and or not 这一系列的运算符称为逻辑运算符
- and并且,两侧操作数均为True,最终结果为True,否则为False
- or 或者,两侧操作数均为False,最终结果为False,否则为True
- not 逻辑取反,操作数本身为True,则返回False,本身为False,则返回True
a=10b=20c=30print(a<banda<c)print(a<bandb>c)print(a>borb>c)print(a<borb>c)print(nota<b)print(nota>b)和其他编程语言意义,Python也存在短路求值的规则
对于and,如果左侧是False,那整体一定为False,右侧的表达式就不再执行
对于or,如果左侧是True,那整体一定为True,右侧的表达式就不再执行
print(10>20and10/0==1)print(10<20or10/0==1)5.4赋值运算符
1.= 的使用
= 表示赋值,这个上面已经用过很多次了,注意和==区分
=除了基本的用法外,还可以同时针对多个变量进行赋值
例如:
链式赋值
a=b=10多元赋值
a,b=10,202.复合赋值运算符
Python还有一些复合赋值运算符,例如:+= -= *= /= %=
其中 a+=1等价于 a = a+1,其他复合赋值运算符也是同理
a=10a=a+1print(f'a ={a}')b=10b+=1print(f'b ={b}')六.顺序语句
默认情况下,Python的代码执行顺序是按照从上到下的顺序,依次执行的
print("1")print("2")print("3")
执行结果一定为123,而不会出现"321"或"132",这种按照顺序执行的代码称为顺序语句
七.条件语句
条件语句能够表达"如果…否则…"这样的语义,这构成了计算机中的基础的逻辑判定
条件也叫分支语句.
7.1语法格式
Python中使用if else关键字表示条件语句
- if
ifexpression:do_something1 do_something2 next_something如果expression值为True,则执行do_something1, do_something2,next_something
如果expression值为False,则只执行next_something,不执行do_something1, do_something2
- if-else
ifexpression:do_something1else:do_something2如果expression值为True,则执行do_something1
如果expression值为False,则执行do_something2
- 3.if - elif -else
ifexpression:do_something1elifexpression2:do_something2else:do_something3如果expression的值为True,则执行do_something1
如果expression的值为False,且expression2为True,则执行do_something2
如果expression的值为False,且expression2为False,则执行do_something3
注意:
if后面的条件表达式,没有(),使用:结尾
if/else命中条件后要执行的"语句块",使用缩进(通常是4个空格或者1个tab)来表示,而不是{}
例如:输入1表示今天锻炼,输入2表示今天休息
choice=input("输入1表示今天锻炼,输入2表示今天休息: ")ifchoice=="1":print("今天我去跑步")elifchoice=="2":print("今天我不跑步")else:print("你的输入有误")八.缩进和代码块
代码块是指一组放在一起执行的代码块
在Python中使用缩进来表示代码块,不同级别的缩进,执行效果是不一样的
例如:
a=input("请输入一个整数:")ifa=="1":print("hello")print(a)b=input("请输入一个整数:")ifb=="1":print("hello")print(b)
在第一个代码中,print(a)有一级缩进,这个语句属于if内的代码块,意味着条件成立才执行,否则不执行
在第二个代码中,print(b)没有缩进,这个语句是if外部的代码,不属于if内部代码块,意味着条件是否成立,都会执行
九.空语句pass
代码示例:输入一个数字,如果数字为1,则打印hello
a=input("请输入一个整数:")a=int(a)ifa==1:print("hello")上面这段代码也可以等价为
a=input("请输入一个整数:")a=int(a)ifa!=1:passelse:print("hello")其中pass表示空语句,并不会对程序的执行有任何影响,只是占个位置,保持Python语法格式要符合要求
十.循环语句
10.1 while循环
基本语法格式:
while条件:循环体- 条件为真,则执行循环体代码
- 条件为假,则循环结束
示例1:打印1-10的整数
num=1whilenum<=10:print(num)num+=1示例2:计算1!+2!+3!+4!+5!
num=1sum=0whilenum<=5:factorResult=1i=1whilei<=num:factorResult*=i i+=1sum+=factorResult num+=1print(sum)10.2 for循环
基本语法格式:
for循环变量in可迭代对象:循环体可迭代对象,指的是"内部包含多个元素,能把一个一个元素取出来的特殊变量"
示例1打印1-10
foriinrange(1,11):print(i)使用range函数,能够生成一个可迭代对象,生成的范围是[1,11),也就是[1,10]
示例2打印2,4,6,8,10
foriinrange(2,12,2):print(i)range函数的第三个参数,可以指定迭代时候的"步长",也就是一次让循环变量加几
示例3打印10 - 1
foriinrange(10,0,-1):print(i)range函数的步长也可以设置为负数
10.3 continue
表示结束这次循环,进行下次循环
示例1打印1-5,遇到3的时候不打印
foriinrange(1,6):ifi==3:continueprint(i)10.4 break
表示结束整个循环
示例1从1 开始打印,遇到3直接结束循环
foriinrange(1,6):ifi==3:breakprint(i)码字不易,如果觉得本文对你有所帮助,请点赞、收藏、加关注支持一下!
你的三连是我更新最大的动力。有任何问题欢迎评论区交流,我们一起进步。下期见!