该部分与其他语言类似,比较灵活,只是依靠缩进的结构控制不如大括号{}来的明确。
# 3.1 条件表达式 #只要不是False、0、None、空(列表、元组、集合、字典、字符串、range)等,均认为True #关键字 True、False首字母大写 #python 3.x 不支持 <>,需使用 != x=[2,4,6,7] while x: #非空 y=x.pop() print(y) # 3.2选择结构 if elif else #x=input('input two numbers:') x='6 4' a,b=map(int,x.split()) #map函数的应用 if a>b: a,b=b,a #位置替换 #python的条件赋值语句 #value1 if condition else value2 ,其中value1、value2可以是复杂的表达式 y=80 score='pass' if y>=60 else 'no pass' #VS对中文字符串不支持 x='2*3-4' x=eval(x) #计算表达式的值 if isinstance(x,int) and 0<=x<=100: #运算符的连续使用,类型判断函数isinstance print(x) #计算100以内的所有素数 x=[] for n in range(2,100): ok=True for i in range(2,n): if n%i==0: #%--取余数计算 ok=False break if ok: x.append(n) y=max(x) #最大值 #计算100以内的最大素数 y=2 for n in range(100,2,-1): ok=True for i in range(2,n): if n%i==0: #%--取余数计算 ok=False break if ok: y=n break #break 退出当前循环,continue退出本次循环 #计算100以内的最大素数2 #利用 while和for结构中的else语句,当循环条件为false,既循环结束时执行 y=2 for n in range(100,2,-1): for i in range(2,n): if n%i==0: #%--取余数计算 ok=False break else: #在2--n-1之间没找到因式 y=n break #break 退出当前循环,continue退出本次循环 import math x=math.ceil(2.1) #3, 最大整数 x=math.sqrt(2) #平方根 x=math.ceil(math.sqrt(2)) #2 #判断素数的函数 def f_su(num): if num<2: return False elif num==2: return True for i in range(2,num): if num % i==0: return False return True #函数f的调用 x=1 y=f_su(x) print('x=',x,',',y) x=[1,2,3,4,10,13] for i in x: y=f_su(i) print('i=',i,',',y) #阶乘的计算 n=3 x=1 for i in range(n,0,-1): print(i) x*=i print('{0}!={1}'.format(n,x)) #字符串格式 format #计算阶乘的函数 def f_t(num): if num<1: return 0 x=1 for i in range(num,0,-1): x*=i return x #调用 a=5 s=f_t(a) print('{0}!={1}'.format(a,s)) #字符串格式 format