python语言赋值语句_python 赋值语句

python中的语句:

赋值语句

if语句,当条件成立时运行语句块。经常与else, elif(相当于else if)配合使用。

for语句,遍列列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。

while语句,当条件为真时,循环运行语句块。

try语句。与except, finally, else配合使用处理在程序运行中出现的异常情况。

class语句。用于定义类型。

def语句。用于定义函数和类型的方法。

pass语句。表示此行为空,不运行任何操作。

assert语句。用于程序调适阶段时测试运行条件是否满足。

with语句。Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加锁,然后在语句块运行退出后释放锁。

yield语句。在迭代器函数内使用,用于返回一个元素。

raise语句。抛出一个异常。

import语句。导入一个模块或包。常用写法:from module import name, import module as name, from module import name as anothername

特别说明,以上划分也不是很严格,有的内容,有的朋友不认为属于语句。这没关系,反正就是那个东西,在编程中使用。不纠结于名词归类上。总之这些都是要掌握的,才能顺利编程呢。

赋值语句

实例:

>>> hiekay = 1

>>> python = 2

>>> x, y = hiekay, python #相当于x=hiekay,y=python

>>> x

1

>>> y

2

>>> x, y #输出的是tuple

(1, 2)

>>> [x, y] #这就是一个list

[1, 2]

>>> [a, b] = [hiekay, python]

>>> a

1

>>> b

2

>>> a, b

(1, 2)

>>> [a, b]

[1, 2]

换一种方式,以上两种赋值方法交叉组合一下:

>>> [c, d] = hiekay, python

>>> c

1

>>> d

2

>>> c, d

(1, 2)

>>> f, g = [hiekay, python]

>>> f

1

>>> g

2

>>> f, g

(1, 2)

居然也行。其实,赋值,就是对应着将左边的变量和右边的对象关联起来。

有这样一个有趣的问题,如果a=3,b=4,想把这两个变量的值调换一下,也就是a=4,b=3。在有的高级语言中,是要先引入另外一个变量c做为中间变量:

a = 3

b = 4

c = a #即c=3

a = b #a=4

b = c #b=3

python 更牛逼,不需要中间变量:

>>> hiekay = 100

>>> python = 200

>>> hiekay, python = python, hiekay

>>> hiekay

200

>>> python

100

神奇吧。

序列赋值

其实上面实验的赋值,本质上就是序列赋值。如果左边的变量是序列,右边的对象也是序列,两者将一一对应地进行赋值。

>>> [a, b, c] = (1, 2, 3) #左右序列一一对应,左边是变量,右边是对象

>>> a

1

>>> b

2

>>> c

3

>>> (a,b,c) = [1,2,3]

>>> a

1

>>> b

2

>>> c

3

>>> [a,b,c] = "kay" #不要忘记了,str也是序列类型的数据

>>> a

'k'

>>> b

'a'

>>> c

'y'

>>> (a,b,c) = "kay"

>>> a,c

('k', 'y')

>>> a,b,c = 'kay' #与前面等价

>>> a,b

('k', 'a')

>>> a,b = 'kay' #报错了,因为左边和右边不是一一对应

Traceback (most recent call last):

File "", line 1, in

ValueError: too many values to unpack

>>> (a,b),c = "hi","kay" #注意观察,这样的像是是如何对应的

>>> a,b,c

('h', 'i', 'kay')

>>> string = "hiekay"

>>> a,b,c = string[0],string[1],string[2] #取切片也一样

>>> a,b,c

('h', 'i', 'e')

>>> (a,b),c = string[:2],string[2:]

>>> a,b,c

('h', 'i', 'ekay')

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值