python赋值语句的形式
1.基本赋值
>>> a='test'
2.元组赋值运算(位置)
>>> a,b='this','is' #写入了2个元组,只是省略了括号 >>> a 'this' >>> b 'is' >>> x='this' >>> y='is' >>> a,b=x,y #省略元组括号,将右侧元组的值赋给右侧元组中的变量 >>> a 'this' >>> b 'is' >>> >>> [a,b,c]=('this','is','a') #最后元组和列表赋值已通用,接受右侧是任意类型的序列(也可以是可迭代的对象),如元组、字符串 >>> a 'this' >>> b 'is' >>> c 'a' >>> [a,b,c]='thi' #此处为字符串 >>> a 't' >>> c 'i' >>> [a,b,c]='this' #右侧元素的数目与左侧的变量数量要相同,不然要报错,这样就有了扩展的序列的解包。 Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: too many values to unpack (expected 3)
3.列表赋值运算(位置)
>>> [a,b]=['test','a'] >>> a 'test' >>> b 'a' >>>
4.序列赋值运算(通用)
>>> a,b,c,d='test' >>> a 't' >>> d 't' >>>
5.扩展的序列解包
>>> a,*b='test' # *号在末变量 >>> a 't' >>> b ['e', 's', 't'] #为列表 >>> *a,b='test' # *在首变量,b匹配最后一项,而a匹配最后一项之前的所有项 >>> a ['t', 'e', 's'] >>> b 't' >>> a,*b,c='googbye' # *在中间的变量 >>> a 'g' >>> c 'e' >>> b ['o', 'o', 'g', 'b', 'y'] >>>
6.多目标赋值运算,共享引用
>>> a=b='test' >>> a 'test' >>> b 'test' >>>
7.增强赋值运算
>>> s=[1,2] >>> s +=[3] #此处python不会使用较慢的+合并,而是调用速度快的extend方法合并。此处+并非生成新的对象。+=隐含了对列表做原处修改。和s=s+[3]完全不一样的。 >>> s [1, 2, 3] >>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。