python笔记 |
您所在的位置:网站首页 › 列表元组字典有什么不同 › python笔记 |
先总结为敬: 字符串, 列表, 元组可以使用乘法运算符实现增倍的效果, 但是集合, 字典不能这样使用, 否则会报错!!
1. 使用乘法运算符可以使字符串增倍: strings = '你好!' * 10 print(strings)运行结果: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py 你好!你好!你好!你好!你好!你好!你好!你好!你好!你好!这个strings的值就相当于10个'你好!'拼接在一起之后的值
2. 列表与元组也能达到相同, 效果吗?, 答案是肯定的! li = [0] * 10 print(li) print('==' * 20) tuples = (0, ) * 10 print(tuples)运行结果如下: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] ======================================== (0, 0, 0, 0, 0, 0, 0, 0, 0, 0)就相当于有10个[0]或(0,)相合并在一起变成了[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]或(0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
3. 那么集合可以吗?, 我们都知道集合内部的元素具有唯一性, 无序性等特点, 那么它会不会相当于10个{0} 相合并的结果呢? 首先你必须得明确, 集合是不可以通过加号合并的, 要合并可以使用并集|, 也可以使用update, 我等会再一一列举, 先看相加会有什么样的结果: sets = {0} + {0} print(sets)报错结果: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py Traceback (most recent call last): File "f:/7.vscode/试验2.py", line 1, in sets = {0} + {0} TypeError: unsupported operand type(s) for +: 'set' and 'set'它会报错说, 集合与集合类型之间不支持相加操作, 这样的结果就变得与上面所提到的字符串,元组, 列表的合并有点不太一样, 那么它还可以使用乘法运算符来合并吗?, 答案是不能! sets = {0} * 10 print(sets)运行结果如下图: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py Traceback (most recent call last): File "f:/7.vscode/试验2.py", line 1, in sets = {0} * 10 TypeError: unsupported operand type(s) for *: 'set' and 'int'它直接报错说乘法运算符不支持在集合与整数类型之间进行操作, 所以集合是不能通过乘法运算符来增倍!!!! 解决一下上面提到的合并集合操作: set1 = {1, 2, 3} set2 = {4, 5, 6} set3 = set1 | set2 print(set3)运行结果: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py {1, 2, 3, 4, 5, 6}注意, 这里的set1与set2的元素并没改变, 最多也就位置变了 另一种更新方式, update来合并集合: set1 = {1, 2, 3} set2 = {4, 5, 6} set1.update(set2) print(set1)运行结果如下: PS F:\7.vscode> & "C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe" f:/7.vscode/试验2.py {1, 2, 3, 4, 5, 6}注意, 这里的set1已经发生了变化!
4. 字典也可以使用乘法运算符, 答案是不能, 类似集合
总结:字符串, 列表, 元组可以使用乘法运算符实现增倍的效果, 但是集合, 字典不能这样使用, 否则会报错!! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |