1、Python流程控制结构
1.1Python条件结构
①if()
语法:
if():
多条语句体
注意:if结构的语句体可以多条,使用统一位置缩进控制语句体;
例:
if(True):
print("你好!")
②if()......else
语法:
if():
多条语句体
else:
多条语句体
例:
a=1;
b=2;
c=a+b;
if(c==3):
print("a+b=",c);
else:
print("a+b!=",c);
③if(): ...... elif(): ...... else:
语法:
if():
多条条件语句
elif():
多条条件语句
else:
多条条件语句
例:
a=1;
b=2;
c=a+b;
if(c==3):
print(c);
elif(b==2):
print(b);
else:
print("错误!");
1.2循环
A:while循环
例如:
i=0#循环变量的初始值
while(i<5):#循环条件
print(i);
i+=1;#循环体内改变循环变量值
a:break,continue
break是跳出循环,不再执行循环语句;
continue是跳出本次循环,继续下一次循环,不退出。
例如:
break:
image.png
continue:
image.png
例如:九九乘法表
i=1
while(i<10):
j=9
while(j>i):
s="%d*%d=%d"%(i,j,i*j)
print(s,sep="\t",end="\t")
j-=1
print()
i=i+1
image.png
b:while...else
else表示当while条件不成立时,执行esle部分
例如:
i=1
while(i<4):
print(i)
i+=1
else:
print("循环结束。。。")
print("ok")
image.png
B:for ... in 循环
for 迭代变量 in 集合:
语句
.....
[else:
语句
......]
注意:
和for循环配合使用range函数
range(stop)
range(strat,stop,[,step])
例如:
for i in range(10,100,20):
print(i);
练习:
for ... in 循环实现斐波拉切数列
1,1,2,3,5,8,13, ...
i=1;
j=1;
for sum in range(3,14):
sum= i + j
print(sum)
i=j
j = sum
image.png
python序列
1、序列基本概念
Python数据的集合总称为序列,分为有序序列和无序序列两类:
有序序列:
列表,元祖,字符串
无序序列:
字典,集合,控制集合数据的对象
2、列表(list)
2.1列表概念及初始化
列表:Python中是有序的、可变的数据集合,使用一对标识[]
;
初始化语法:
---列表初始化语法
①创建一个空列表
lia=[]
②创建一个列表
lib=[8,6,4]
---输出结果[8,4,6]
,列表能够保证有序
print(lib)
③注意:列表中元素支持储存不同类型的值
lic=[8,'asd',8.5]
---输出结果:[8,'asd',8.5]
print(lic)
④引用列表变量
实际上引用列表对象的变量,存储堆中列表对象的地址;
a=[1,2]
b=[1,2]
注意:"=="对应判断两个值是否相等
c=a==b
对于对象是否是同一个对象使用is操作符判断
c=a is b
id()函数获取对象中存储地址
print(id(a),id(b),id(8),id(8))
注意:
初始化列表对象,在堆中每一次生成不同的对象
;
a=[1,2]
b=[1,2]
c= a is b
---结果: c=False,a 和 b 是两个不同的对象;
2.2list()函数
python通过list(参数),能够将有迭代对象转换列表对象;
①通过list函数构建一个空列表对象
x=list()
print(x)
②通过list函数将其他类型的对象转换成列表对象
TypeError: 'int' object is not iterable:
Type错误:“int”对象不是可迭代的
x=list(8)
注意:
由于8是int类型,该类型的值不能迭代,所以,list()函数不能将8转换成列表对象
③将字符串对象转换成列表对象
x =list("abc")
返回结果是['a' , 'b ' , 'c' ]
print(x)
④通过list函数将Range对象转换成列表对象;
通过range函数得到Range对象
y=range(10)
x=list(y)
print(x)
练习:
将10到20所有的奇数转换成列表对象并输出;
x=list(range(11,20,2))
print(x)
网友评论