写点什么

python-- 语句的多样性

用户头像
许有加
关注
发布于: 2 小时前
python--语句的多样性

#语句:pirnt 语句,import 语句,赋值语句,条件语句,循环语句,列表推导式(list comprehension),pass,del,exec##很重要


###赋值语句 1、序列解包,链式赋值,增量赋值 x,y,z = 1,2,3

#序列解包 sequence unpacking#~注意:左右数量必须一致,否则会报 value Errorprint(x,y,z)

#上面的语句,相当但与元组赋值

values =4,5,6

x,y,z = values

print(x,y,z)

scoundrel = {'name':'Robin','girlfriend':'Marion'}

key,value = scoundrel.popitem()

print(key,value)

print(scoundrel)

#链式赋值 x=y=1#增量赋值 x +=1 # += -+ *= /+'''




条件和条件语句这里涉及到 boolean 在 if 中哪些被看作为 False 呢?False None 0 空字符串:"" 空元组:() 空列表:[] 空字典{}


比较运算符x==yx<y     #> < >=   <=   !=x is y   # is notx in y   # x not in y
== 与 is的 区别== 是判断两个东西是否相等is 是判断两个东西是否是同一个
在比较运算符中,还有字符串和序列的比较如:'alpha' >'beta' 按照字母的顺序比较 [1,2,3] > [3,4,5] 每个元素进行比较
## 多个条件的判断用 and or not 其中 and or是有短路逻辑的''''''##语句断言 assertassert 与 if 很相似那为什么需要assert呢? 因为与其让程序在晚些时候崩溃,不如在错误条件出现时直接让它崩溃。 一般来说,可以要求某些条件必须为True 如:在检查函数参数的属性时,或者作为初期测试和调试过程中的辅助条件 如果assert为False ,则会抛出异常:AssertionError 并且会终止程序运行,'''age =10assert 0<age <100 age = -1 #assert 0<age <100#assert 0<age <100 ,'年龄必须大于0小于100' #AssertionError: 年龄必须大于0小于100
'''-------------------循环:while for break:跳出整个循环 continue:跳过当前循环,进入下一次循环
for else的用法: for x in range(10): if(x==11): pass else: print('没有11的数')'''name=''while not name or name.isspace(): name = input("Please enter your name:") #raw_input 是2.0的,在3.0用inputprint('Hello,%s' % name)
'''---------------------迭代工具1、并行迭代 同时迭代两个序列 zip函数:可以作用于任意多的序列,xrange1= zip(range(5),range(10000)) zip对象内部是一个元组,可以转换为元组或者列表2、按索引迭代 enumerate函数:可以提供索引的地方迭代索引-值对 for index ,string in enumerate(string): if 'xxx' in string: string[index] = '[censored]'
3、翻转和排序迭代 reversed:翻转 sorted:排序 sorted([2,3,41,5,643,3]) sorted('Hello,world') list(reversed('Hello,world')) ''.join(reversed('Hello,world!'))'''
#迭代工具names =['anna','beth','george','damon']ages =[12,23,4,22]for i in range(len(names)): print('%s is %d years old' % (names[i] ,ages[i]))#与上面的结果是一样的 ,这里使用zip函数for name,age in zip(names,ages): print('%s is %d years old' % (names[i] ,ages[i]))

'''-----------------列表推导式: 轻量级循环list comprehension 是利用其他列表创建新列表'''#初级[x*x for x in range(10)]#中级[x*x for x in range(10) if x%3 ==0]#高级[(x,y) for x in range(3) for y in range(3)]#超级高级girls = ['alice','bernice','clarice']boys = ['chris','arnold','bob'][b+'+'+g for b in boys for g in girls if b[0]==g[0]]
#pass语句,----什么都没发生#del :删除哪些不再使用的对象#exec和eval执行和求值字符串:这是近似于黑暗魔法,在使用前一定要慎之又慎
复制代码


用户头像

许有加

关注

还未添加个人签名 2019.02.11 加入

还未添加个人简介

评论

发布
暂无评论
python--语句的多样性