learn with python-第九章:元组

第九章:元组
9.1易变性和元组
目前为止,我们接触了两种复合类型:由字符组成的字符串,以及由多重数据类型组成的列表,两者的区别在于列表中的元素可以变,而字符串中的字符不能变,换句话来说就是列表可变,字符串不可变。
python中有另外一种类型和list类似,但是其不可变,这种类型称之为tuple,语法上tuple是一串逗号分隔的值列表
>>> tuple = 'a', 'b', 'c', 'd', 'e'
我们也可以将tuple值用括号包起来,创建只包含一个元素的tuple必须加上最后一个逗号,否则会当成是一个字符串。
>>> t1 = ('a',)
除了语法之外,元祖的操作同列表的操作完全一样,通过下标从元祖获取元素
>>> tuple = ('a', 'b', 'c', 'd', 'e')
>>> tuple[0]
'a'
分片操作获取元祖中的部分值
>>> tuple[1:3]
('b', 'c')
但是如果我们尝试改变元祖中的某个值,会抛出一个错误
>>> tuple[0] = 'A'
TypeError: object doesn't support item assignment
虽然我们不能改变元祖的元素,但是我们可以新建一个元祖替换
>>> tuple = ('A',) + tuple[1:]
>>> tuple
('A', 'b', 'c', 'd', 'e')

9.2元祖赋值
有时,我们需要交换两个变量的值,我们通过一个临时变量进行交换:
>>> temp = a
>>> a = b
>>> b = temp
但是如果程序中有大量类似的代码会显得臃肿,python提供了一个元组操作为这种操作提供了便捷的方式
>>> a, b = b, a
左边是元组变量,右边是元组的值,每个值都被分配给对应的变量,游标的表达式在赋值开始之前都会被计算出值
这种特性为元组的赋值提供了非常大的便利性。左边的变量数目必须和右边值得数目相同。

9.3将元组作为返回值
函数可以将元组作为返回值返回,例如:下面函数交换两个参数
def swap(x, y):
return y, x
我们可以把返回值赋值给两个变量:
a, b = swap(a, b)

9.4随机数
大部分的计算机对于同一种情况只能进行同一种操作,因此被称之为是确定性的,确定通常是一件好事情,我们期望相同的条件下每次计算的结果都相同,对于某些情况,我们却需要计算机表现出一定的不确定性,游戏就是一个显著的例子,除此之外还有很多情况。
要使一个程序变得完全不确定性并不容易,但是让其看起来不确定却不难,python提供了内置的函数产生随机数,在数学的中,这些数字并不是随机的,但是我们可以认为其是随机的。
random模块中包含函数random返回一个0.0到1.0之间的随机数,每次调用random方法都会得到一个伪随机数
import random
    for i in range(10):
        x = random.random()
        print x
如果需要产生一个更大边界的随机数,我们可以用随机数乘以这个边界值

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值