列表可任意修改、插入、删除元素,而元组不可以!
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. 用%格式化
- %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'