3 元组:戴上枷锁的列表

列表可任意修改、插入、删除元素,而元组不可以!

1. 创建和访问元组

tuple = (1, 2, 3, 4)
tuple[1]     #为2
tuple[:4]    #为(1, 2, 3, 4)

注意:小括号不是关键,逗号才是关键
例1:

tmp = (1)
type(tmp)    #返回为int

例2:

tmp = 1, 2, 3
type(tmp)    #返回为tuple

所以,如果要元组中只有一个元素,应这样定义:

tmp = (1,)    #tmp = 1,

元组也有重复操作符:

8 * (8,)    #结果为:(8, 8, 8, 8, 8, 8, 8, 8)

2. 更新和删除元组

1. 插入:先切分,再插入

tmp = (1, 2, 3, 4)
tmp = tmp[:2] + ('abc',) + tmp[2:]    #结果为:(1, 2, ‘abc’, 3, 4)

tmp = ('start',) + tmp + ('end',)       #可在两头插入

#联想#str类型也可以用这样的分片方式更新

str = 'abcabcrtkdalie'
str = str[:6] + 'AAAAA' +str[6:]    #更新后:'abcabcAAAAArtkdalie'

2. 删除:del

del tmp

3. 辨析简便赋值和元组

>>> a,b = 1,2
>>> type(a)
<class 'int'>
>>> c = a,b
>>> type(c)
<class 'tuple'>

4. 字符串的格式化

可用于print()输出

1. 用format()格式化

  • 用位置参数
'{0} love {1} {2}'.format('I','playing','games')    #输出:'I love playing games'

  • 用关键字参数
'{a} love {b} {c}'.format(a='I',b='playing',c='games')    #输出:'I love playing games'

  • 两种参数混合使用,但注意位置参数必须在关键字参数之前
'{0} love {b} {c}'.format('I',b='playing',c='games')    #输出:'I love playing games'

  • 打印出{}
'{{0}}'.format('no print')    #输出:'{0}'

'{{{0}}}'.format('no print')    #输出:'{no print}'

  • 限制输出格式
'{0:.2f}{1}'.format(1.234,'GB')    #输出:'1.23GB'

2. 用%格式化

具体参考:http://bbs.fishc.com/forum.php?mod=viewthread&tid=39140&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403

  • %c:格式化字符及ASCII码
'%c %c %c' % (97,98,99)    #输出:'a b c'

  • %d:格式化整数
'%d + %d = %d' % (4, 5, 4+5)    #输出:'4 + 5 = 9'

  • %f:格式化定点,可指定小数点后精度
 '%.1f' % 1.23    #输出:'1.2'

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容