循环控制
、break
#break
i=0;
while i
if i==5:
break;
print(i);
i+=1;
运行结果:
1
2
3
4
[Finished in 2.3s]
break是用来结束本层循环的;
、continue
#continue
i=0;
while i
if i==5:
i+=1;
continue;
print(i);
i+=1;
运行结果:
[Finished in 1.8s]
、for循环下break的使用
#break
mylist=['user1','user2','user3'];
for i in mylist:
if i=='user3':
break;
print(i);
运行结果:
user1
user2
[Finished in 0.1s]
、for循环下continue的使用
#continue--跳过
mylist=['user1','user2','user3'];
for i in mylist:
if i=='user1':
continue;
print(i);
运行结果:
user2
user3
[Finished in 0.1s]
语法实例
、while来实现九九乘法表
#while
i=1;
while i
j=1;
while j
print('*='.format(j,i,j*i),end=' ');
j+=1;
i+=1;
print();
注:print中的第一个参数字符串.format。字符串格式化输出(字符串.format),有三个值,分别是j、i、j*i,这三个值的位置索引分别是1、2、3,在程序中分别是第一个值的下标是0、以此类推(0、1、2),解决换行问题,在print中还有另外一个参数,那就是end,可以是结果显示在一行内。在while大循环下每次执行后print一次,即可实现换行。
运行结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
[Finished in 0.1s]
、for循环九九乘法表
range可以形成一个有序的数组,不包含最后一个值
for i in range(5):
print(i)
运行结果:
1
2
3
4
[Finished in 0.3s]
for九九乘法表
#for
for i in range(1,10):
for j in range(1,i+1):
print('*='.format (j,i,j*i),end=' ');
print();
运行结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
[Finished in 0.1s]
其它语法
、pass
pass就是占位,空执行。占位符
def myfunction():
运行结果:
File "D:pythonpass空执行.py", line 5
^
SyntaxError: unexpected EOF while parsing
[Finished in 0.1s with exit code 1]
[shell_cmd: python -u "D:pythonpass空执行.py"]
[dir: D:python]
[path: C:Program Files (x86)Python36-32Scripts;C:Program Files (x86)Python36-32;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShell1.0]
语法错误,结构没有结束
在使用pass后就不再报错了
def myfunction():
pass;
运行结果:
[Finished in 0.1s]
pass实现类的最小单元
class myclass:
pass;
obj=myclass;
print(obj);
运行结果:
[Finished in 0.1s]
、del
del是用来删除变量名的,不是用来删除变量值的。
#del
mylist=['user1','user2','user3'];
del mylist[0];
print(mylist);
运行结果:
['user2', 'user3']
[Finished in 0.1s]
重要函数
、range
#range
for i in range(5):
print(i)
运行结果:
1
2
3
4
[Finished in 0.2s]
、len
len用来计算长度
#len
mylist=[1,3,5,7,9];
print(len(mylist));
运行结果:
5
[Finished in 0.1s]
、range...len
range...len遍历序列
#len
mylist=[1,3,5,7,9];
for i in range(len(mylist)):
print(i,mylist[i]);
运行结果:
0 1
1 3
2 5
3 7
4 9
[Finished in 0.1s]
、zip
zip可将列表、元组、集合非常轻松的形成字典
#zip
mylist1=[1,3,5,7,9];
mylist2=[2,4,6,8,10];
mylist3=list(zip(mylist1,mylist2));
mylist3=tuple(zip(mylist1,mylist2));
mylist3=set(zip(mylist1,mylist2));
mylist3=dict(zip(mylist1,mylist2));
for key in mylist3:
print(key,mylist3[key]);
运行结果:
1 2
3 4
5 6
7 8
9 10
[Finished in 0.1s]
、enumerate
enumerate可遍历序列的key和value
#enumerate
mylist1=[1,3,5,7,9];
for key,val in enumerate(mylist1):
print(key,val);
运行结果:
0 1
1 3
2 5
3 7
4 9
[Finished in 0.1s]
重要函数
1、range、len、range...len--对付列表、元组和集合遍历
2、zip--方便的生成字典
3、enumerate--对付列表、元组和集合遍历
感谢阅读,欢迎在评论区中发表自己不同的观点,若有其他问题请在评论区留言,喜欢的朋友请多多关注转发支持一下。 企鹅号:袁尚 ---------END---------
领取专属 10元无门槛券
私享最新 技术干货