1、if语句的基本用法:
1 name = "math"
2 if name == "no":
3 print(88)
4 elif name == "lin":
5 print(77)
6 elif name == "math":
7 print("66")
8 else:
9 print("55")
2、while语句(包括break和continue)与C语言中的类似,值得一提的是else,这个else只有再循环正常结束时才会执行,即没有碰到break语句。
1 x = [1, 2, 3, 4]
2 while x:
3 if x[0] == 3:
4 print(x[0])
5 break
6 x = x[1:]
7 else:
8 print("not found")
输出结果为:3
continue和break的区别:这两个都是跳出循环;但是continue是跳出单层循环,执行continue之后立刻回到循环的顶端。break语句只要一执行就会立刻跳出循环。
3、for语句是python中的一个通用的序列迭代器,可以遍历字符串、列表、元组、其他的内置可迭代对象以及通过类创建的新对象。for语句跟while语句类似,也有else分支,在没有碰到break的情况下才会执行,下面举例说明:
1 for x in [1, 2, 3, 4]: #遍历列表
2 print(x)
3
4
5 for s in "python": #遍历字符串
6 print(s)
7
8
9
10 T = [(1, 2), (3, 4), (5, 6)]
11 for (a, b) in T: #遍历元组序列
12 print(a, b)
输出:
1
2
3
4
p
y
t
h
o
n
1 2
3 4
5 6
4、在循环语句中、常常使用range()函数,第一个参数表示起点,第二个参数表示终点,第三个参数表示步长;期中第一个和第三个参数可以省略,例如:
1 a = list(range(5))
2
3 b = list(range(2, 5))
4
5 c = list(range(0, 10, 2))
6
7
8 print(a) #[0, 1, 2, 3, 4]
9 print(b) #[2, 3, 4]
10 print(c) #[0, 2, 4, 6, 8]
非完备遍历:
1 S = "abcdefghijk"
2
3 a = list(range(0, len(S), 2))
4
5 print(a) #[0, 2, 4, 6, 8, 10]
6
7 for i in a:
8 print(S[i], end=" ") #a c e g i k
并行遍历:
1 # zip会取一个或者多个序列为参数,然后返回元组的列表,将这些序列中的并排的元素配成对
2
3 L1 = [1, 2, 3, 4]
4 L2 = [5, 6, 7, 8]
5
6
7 a = list(zip(L1, L2))
8 print(a) #[(1, 5), (2, 6), (3, 7), (4, 8)]
9
10 for (x, y) in zip(L1, L2):
11 print(x, y, "--->", x+y)
1 # 在python2中内置map函数,用类似的方法配对起来,但是如果参数长度不同,则会为较短的序列用None补齐
2
3 S1 = "abc"
4 S2 = "xyz123"
5
6 map(None, S1, S2)
7 # [('a', 'x'), ('b', 'y'), ('c', 'z'), (None, '1'), (None, '2'), (None, '3')]
1 # 在python3中 map(f, list):把list上面的元素依次作用于f上,并返回一个新的list
2
3 a = list(map(ord, "spam"))
4 print(a) #[115, 112, 97, 109]
1 # enumerate:同时产生偏移量和元素
2
3 S = "spam"
4 for (x, y) in enumerate(S):
5 print(x,"--->", y)
6 '''
7 输出:
8 0 ---> s
9 1 ---> p
10 2 ---> a
11 3 ---> m
12 '''