已知list()方法是将元组转换为列表。
然后运行如下命令:
a=("hello")
list(a)
得到的是列表
['h', 'e', 'l', 'l', 'o']
自己参考了一下网上的说明,弄明白了前面的a=("hello")并非是元组而是字符串,那么就可以理解为list()方法可以给字符串用,然后拆字变成列表?
请问为什么list()方法可以用在字符串上?
然后我进行了如下尝试:
>>>a=("胸无大志")
>>>a
>>>'胸无大志'
>>>a=list(a).reverse()
>>>a
>>> #这里什么都没有了,print输出为None
莫名其妙……
然后这样才能输出自己想要的结果(['志', '大', '无', '胸'])
>>>a=("胸无大志")
>>>a
>>>'胸无大志'
>>>a=list(a)
>>>a.reverse()
>>>a
>>>['志', '大', '无', '胸']
请问这是什么原因?
谢谢!
list()
构造函数通过可以传递iterable
对象. 而string
就是 iterable.参考 Lists
至于
reverse()
对列表操作, 本身返回值是none
. 因为list
是mutable
对象(可变对象), 对可变对象进行操作, Python 中大多数会对其本身进行操作, 返回值为none
.