python的逻辑符
True:表示非空的量
False:表示0,None,空的量等
>>> print('o' and 'a')
a
>>> 1 and 'a'
'a'
>>> 1 and 1.0
1.0
>>> 1 and 0
0
>>> 'a' and 0
0
>>> 1 and 'a' and 1.0
1.0
>>> 1 and 1.0 and 'a' and 0
0
>>> 1.0 and 'a'
'a'
>>> 'a' and .0
0.0
>>> 'a' and 1.0
1.0
>>> 1 or 1
1
>>> 1 or 0
1
>>> 0 or 0
0
>>> 0 or 'a'
'a'
>>> 'a' or 1.0
'a'
>>> 1.0 or 'a'
1.0
>>> 1.0 or 'a' or 0
1.0
>>>
if-else流程
>>> if 1 or 0:
if 0 or 0:
print('aaaa')
elif 'a' and 1 and 1.0:
print("bbb")
else:
print("ccc")
else:
print("ddd")
bbb
>>>
for循环流程
>>> for x in 'abcde':
print (x)
a
b
c
d
e
>>> for x in range(1,11,1):
print(x)
1
2
3
4
5
6
7
8
9
10
>>> a='abcdef'
>>> for x in range(1,len(a),2):
print(a[x])
b
d
f
>>> a=(1,'a',(1,'a'))
>>> for x in a:
print(x)
1
a
(1, 'a')
>>> for x,v in a:
print (x)
print(v)
Traceback (most recent call last):
File "<pyshell#87>", line 1, in <module>
for x,v in a:
TypeError: 'int' object is not iterable
>>> a=(('a',1),(1,'a'))
>>> for x,v in a:
print(x)
print(v)
a
1
1
a
>>> for x,y in a:
print(x)
print(y)
[1, 2]
[3, 4]
[5, 6]
[7, 8]
>>>
>>> a={1:'a',2:'b'}
>>> for k in a:
print(k)
1
2
>>> for k,v in a.items():
print(k)
print(v)
1
a
2
b
>>> for x in range(1,11,1):
if x==2:
print(x)
continue
if x==3:
x=5
break
if x==5:
pass
print( x)
1
2
一个for循环序列只能循环到第二层
>>> a=((((1,2),(3,4)),((5,6),(7,8))),(((9,10),(11,12)),((13,14),(15,16))))
>>> for k in a:
print(k)
(((1, 2), (3, 4)), ((5, 6), (7, 8)))
(((9, 10), (11, 12)), ((13, 14), (15, 16)))
>>> for k,v in a:
print(k)
print(v)
((1, 2), (3, 4))
((5, 6), (7, 8))
((9, 10), (11, 12))
((13, 14), (15, 16))
>>> for k,v,l in a:
print(k)
print(v)
print(l)
Traceback (most recent call last):
File "<pyshell#191>", line 1, in <module>
for k,v,l in a:
ValueError: need more than 2 values to unpack
>>> for k,v in a:
for j in k:
print(j)
for l in v:
print(l)
(1, 2)
(3, 4)
(5, 6)
(7, 8)
(9, 10)
(11, 12)
(13, 14)
(15, 16)
>>> for k in a:
for j in k:
for u in j:
print(u)
(1, 2)
(3, 4)
(5, 6)
(7, 8)
(9, 10)
(11, 12)
(13, 14)
(15, 16)
>>> for k in a:
for j in k:
for u in j:
for p in u:
print(p)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>> for k,v in a:
for j in k:
for h in j:
print(h)
for l in v:
for u in l:
print(u)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>> for k,v in a:
for j,l in k:
print(j)
print(l)
for u,i in v:
print(u)
print(i)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>>
while流程
>>> while num!=10:
if num==9:
break
print(num)
num+=1
1
2
3
4
5
6
7
8
9
>>> while not 0:
print("senssic")
senssic
senssic
senssic
senssic
循环下的else:
只有当循环正确执行完毕时候循环对应的else:才会执行,否则任何的异常或者中断else:代码块都不会执行
for x in range(1,101,1):
if x==10:
continue
if x==15:
print('be breaked')
break
else:
print('只有循环正常结束才执行的代码')
print('顺序执行的代码')
for x in range(1,101,1):
if x==10:
continue
if x==15:
print('be breaked')
pass
else:
print('只有循环正常结束才执行的代码')
print('顺序执行的代码')
num=0
while num<10:
num+=1
if num==3:
continue
if num==5:
break
print(num)
else:
print('while-只有循环正常结束才执行的代码')
print('while-顺序执行的代码')
while num<10:
num+=1
if num==3:
continue
if num==5:
pass
print(num)
else:
print('while-只有循环正常结束才执行的代码')
print('while-顺序执行的代码')
结果:
E:\program\python\python.exe E:/work/python/senssic/urlpy.py
be breaked
顺序执行的代码
be breaked
只有循环正常结束才执行的代码
顺序执行的代码
1
2
4
while-顺序执行的代码
6
7
8
9
10
while-只有循环正常结束才执行的代码
while-顺序执行的代码
Process finished with exit code 0