专栏首页python3python赋值语句的形式

python赋值语句的形式

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]
>>>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 函数学习总结

    自己总结:就相当于现实中各种用途的工具,有着对数据进行各种处理的功能(实质就是比较复杂的变量?!)

    py3study
  • python按引用赋值和深、浅拷贝

    在计算机语言中,有两种赋值方式:按引用赋值、按值赋值。其中按引用赋值也常称为按指针传值(当然,它们还是有点区别的),后者常称为拷贝副本传值。它们的区别,详细内容...

    py3study
  • Python 与 SQLite

    --> SQLite version 3.8.2 2013-12-06 14:53:30

    py3study
  • Preact -- React的轻量解决方案

    本文使用starter-kit:steamer-react react分支。此分支已集成react与preact。 背景 最近接手了互动视频的项目,做了一个月的...

    李成熙heyli
  • JS this指针的理解

    this是javascript的一个关键字,也是比较容易令人迷糊的一个概念 this的本质:当前对象的所有者 示例1 var x = 1; function t...

    dys
  • 聊聊elasticsearch的LagDetector

    elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/cluster/coordination/...

    codecraft
  • 聊聊elasticsearch的LagDetector

    elasticsearch-7.0.1/server/src/main/java/org/elasticsearch/cluster/coordination/...

    codecraft
  • TypeScript 实战算法系列(一):实现数组栈与对象栈

    栈作为一种数据结构,它可以应用在很多地方,当你需要经常获取刚存放进去的数据时,那么栈这种数据结构将是你的首选。 栈的实现方式一般有两种:数组实现和对象实现,这两...

    一只图雀
  • 【React】249-当我开始使用React 时,我希望我知道这些知识

      可以给每个方法加上.bind(this)来解决 this 指向的问题,因为大多数教程都告诉你这样做。如果你有几个受控组件,那么constructor(){}...

    pingan8787
  • vue简单实现九宫格抽奖

    任我行RQ

扫码关注云+社区

领取腾讯云代金券