关于新版Python图书中5.2.2更新元组提问
文中利用新建一个同名元组的方法“添加“元素的概念我理解了,但是为什么我将x_men= (x_men , "小甲鱼")+ x _men 替换为x_men = (x_men , "小甲鱼")+ x _men 或者x_men = x_men + (x _men , "小甲鱼")都提示错误呢? 还有一个问题就是为什么按照书中的方法,双引号会变成单引号呢?>>> x_men = ("金刚狼", "暴风女", "火凤凰", "镭射眼")
>>> x_men = (x_men, '小甲鱼') + x_men
>>> x_men
('金刚狼', '小甲鱼', '火凤凰', '镭射眼')
>>> x_men = ("金刚狼", "暴风女", "火凤凰", "镭射眼")
>>> x_men = (x_men , "小甲鱼") + x_men
Traceback (most recent call last):
File "<pyshell#155>", line 1, in <module>
x_men = (x_men , "小甲鱼") + x_men
TypeError: can only concatenate tuple (not "str") to tuple
是为什么我将x_men= (x_men , "小甲鱼")+ x _men 替换为x_men = (x_men , "小甲鱼")+ x _men 或者x_men = x_men + (x _men , "小甲鱼")都提示错误呢?
因为当你索引某个元素时候 返回的是那个元素,比如你这里元组内的元素都是字符串,所以你索引返回的是 字符串
而对字符串进行使用 + 号是拼接操作,而字符串不能和元组进行拼接,所以导致报错,而你切片操作 返回的还是元组,所以不会报错
还有一个问题就是为什么按照书中的方法,双引号会变成单引号呢?
在Python 单双引号没有区别,除非你用来匹配数据 元组是不能变化的,研究它的变通改变,没啥意义 Twilight6 发表于 2020-6-21 15:48
因为当你索引某个元素时候 返回的是那个元素,比如你这里元组内的元素都是字符串,所以你索引返回的是...
请问x_men 和x_men l两者不全是索引元素的意义么?还是说切片不意味着单纯的索引,所以他不能和字符串相拼接? 生化楼大爷 发表于 2020-6-21 15:52
请问x_men 和x_men l两者不全是索引元素的意义么?还是说切片不意味着单纯的索引,所以他不能和字 ...
第一个是索引操作,第二个叫切片
比如:
x_men = ['aaa','bbb','ccc']
x_men
>>> 'aaa'
x_men
>>> ['aaa'] Twilight6 发表于 2020-6-21 15:54
第一个是索引操作,第二个叫切片
比如:
明白了,我概念上有点混淆了,多谢。 生化楼大爷 发表于 2020-6-21 15:52
请问x_men 和x_men l两者不全是索引元素的意义么?还是说切片不意味着单纯的索引,所以他不能和字 ...
所以你尝试这将两种不同类型数值进行 + 操作 导致的报错
页:
[1]