# 条件判断# if condition:# do something# else:# do somethingtotal_cost = 32.5is_vip=Trueif total_cost>30: discount=0.9 if is_vip: discount=0.8elif total_cost>50: discount = 0.8else: discount=1total_cost *=discountprint("小姐姐买水果的实际花费为:{}".format(total_cost))# 备注elif可以有0到任意多个,else可有可无,条件判断可以嵌套#一个值被当做布尔值,概念上更像有和没有的区别,比如为空的list\tuple\dict做if判断都是false# 断言age=18assert age==18 #如果等于,程序继续执行,不等于则程序报错,中断执行# 循环# for循环costs=[2,3,13,56,109]for cose in costs: print('消费{}元'.format(str(cose).center(10)))# 生成一个长度为20的随机列表import randomprint(random.randint(1,10))#1到10之间的随机数random_numbers=[]random_numbersfor=[]while len(random_numbers)<20: random_numbers.append(random.randint(1,10))print(random_numbers)for i in range(20): random_numbersfor.append(random.randint(1,10))print(random_numbers)# 找出list中偶数a=[6,3,7,9,0,5]for number in a: if number % 2 ==0: print('{} is 偶数'.format(number)) else: print('非偶数情况这句话会被执行') continue #跳过本次循环,执行下一次循环 print('非偶数情况这句话不会被执行')for number in a: if number % 2 == 0: print('{} is 偶数'.format(number)) else: print('非偶数情况这句话会被执行') break #遇到非偶数情况,则结束整个循环 print('非偶数情况这句话不会被执行')# for循环构建推导式#列表推导式new_numbers=[number*10 for number in random_numbers]print(new_numbers)#字典推导式dict_numbers={number:'A' for number in random_numbers}print(dict_numbers)#生成器new_numbers=(number*10 for number in random_numbers)print(new_numbers)#运行报错print(tuple(new_numbers))#生成器# 函数varibal={ 'a':100, 'b':100, 'c':200}def get_keys(dict_varibal, value): return [key for key, v in dict_varibal.items() if v==value]print(get_keys(varibal,200))def test(vari): vari = 100 return varivar=1test(var)print(var)#打印的值是1,函数中参数的值发生了改变,但是传递进去的参数没有发生改变#参数的收集# *args(*必须有,arg 是名称可以变),如果输入的参数个数不确定,其它参数全部通过 *arg,以元组的形式由 arg 收集起来#**kargs用来收集关键字参数,只不过变量存放的方式是字典def test(name,age,*args,**kwargs): print(name,age,*args,**kwargs)test('wrong',12,'lk',[23,34])#装饰器def testzsq(): print('test')c=testzsq #把函数赋值给一个变量print(c.__name__)#函数可以当做函数的参数值def func(a): print("function run:{}".format(a.__name__))func(testzsq)#函数可以当做函数的返回值进行返回#返回一个从0到1 的浮点值def tesths(): return round(random.random(),2)#round函数代表四舍五入print(tesths())def decorator(func): return func()print(decorator(tesths))
来源:https://www.cnblogs.com/testerling/p/11876613.html