一、if语句
可有零个或多个 elif 部分,else 部分也是可选的。关键字 'elif
' 是 'else if' 的缩写,用于避免过多的缩进。if
... elif
... elif
... 序列可以当作其它语言中 switch
或 case
语句的替代品。
x = int(input("Please enter an integer: ")) if x < 0: x = 0 print('Negative changed to zero') elif x == 0: print('Zero') elif x == 1: print('Single') else: print('More')
三元运算符
X if C else Y
C是条件表达式,X是C为True时的结果,Y是C为False时的结果。
例如:
x, y = 8, 7 bigger = x if x > y else y print(bigger)
二、for语句
for循环的一般格式如下:
for <variable> in <sequence>:
<statements_1>
else:
<statements_2>
例如:
word = input("输入字符串:") doubleWord = "" for w in word: doubleWord += w*3 print("三倍字符串是:" + doubleWord + "。")
range()函数
内置函数 range() 用于生成等差数列:
遍历列表
people = ["美国人","英国人","德国人","法国人","韩国人","俄国人","Chinese",] for i in range(len(people)): people[i] = people[i][0:2] print(people)
遍历字典
(1)字典方法values()——用于获取字典的所有值
(2)字典方法items()——同时提取键及其对应的值
months = {'January':1, 'February':2, 'March':3, 'April':4, 'May':5} for key in months: print(key,'--',months[key],end=' ') #end保证同行输出并隔2个空格(详见3.4.6节) print() #换行 for value in months.values(): #使用字典方法values() print('values = ',value,end=' ') print() for key, value in months.items(): #使用字典方法items() print(key,'--',value,end=' ')
for循环嵌套
for i in range(5,10): for j in range(5,10): print (i,"*",j,"=",i*j,end='') print("\t",end='')
三、range()函数
生成的序列绝不会包括给定的终止值
四、列表解析
list1 = [2.3,3.4,4.5,5.6,6.7] print ([int(x) for x in list1]) #list中所有数转换为整数(割尾巴取整) print ([int(x) for x in [2.3,3.4,4.5,5.6,6.7]]) #list中所有数转换为整数 print ([int(x)**2 for x in list1]) #打印list中所有数的平方 print ([int(x)**2 for x in list1 if int(x) % 2 == 0]) #只打印偶数的平方
应用在其他对象上的列表解析
print ([ord(x) for x in "abcd"]) print ([int(x)**0.5 for x in (-1,9,16) if x >= 0]) print ([x**3 for x in range(3)])
五、while循环
格式:
while <expression>:
<statements_1>
n=100 n = int(input("输入一个数字:")) #输入一个数,并转换成整数 sum = 0 #求和变量初始化为0 counter = 1 #计数器初始化为1 while counter <= n: #计数器<=100时 sum += counter #求和变量加上counter counter += 1 #计数器增1 print("1到%d之和为: %d" % (n,sum)) #打印结果
以正常的方式退出循环(不是执行break、return语句)时,else子句将被执行
cou = 0 while cou <= 3: print (cou, " 小于或等于 3") cou += 1 else: print (cou, " 大于 3")
pass是空语句,是为了保持程序结构的完整性。
默认情况下,print语句(更确切地说是函数)输出时自动换行,使用end=’ ’可将结果输出到同一行,或者在输出的末尾添加其他字符。