前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python赋值语句的形式

python赋值语句的形式

作者头像
py3study
发布2020-01-08 16:44:55
1K0
发布2020-01-08 16:44:55
举报
文章被收录于专栏:python3python3

python赋值语句的形式 1.基本赋值

代码语言:javascript
复制
>>> a='test'

2.元组赋值运算(位置)

代码语言:javascript
复制
>>> 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.列表赋值运算(位置)

代码语言:javascript
复制
>>> [a,b]=['test','a']
>>> a
'test'
>>> b
'a'
>>>

4.序列赋值运算(通用)

代码语言:javascript
复制
>>> a,b,c,d='test'
>>> a
't'
>>> d
't'
>>>

5.扩展的序列解包

代码语言:javascript
复制
>>> 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.多目标赋值运算,共享引用

代码语言:javascript
复制
>>> a=b='test'
>>> a
'test'
>>> b
'test'
>>>

7.增强赋值运算

代码语言:javascript
复制
>>> s=[1,2]
>>> s +=[3]       #此处python不会使用较慢的+合并,而是调用速度快的extend方法合并。此处+并非生成新的对象。+=隐含了对列表做原处修改。和s=s+[3]完全不一样的。
>>> s
[1, 2, 3]
>>>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档