有什么理由不将字符串转换为这种方式吗?

时间:2019-10-06 20:10:23

标签: python-3.x python-3.7

我在Windows上使用PyCharm(对Python来说是很新的东西)

我是“尝试此操作时会发生什么?”人,所以我尝试了:

alist = []
alist += 'wowser'

返回['w', 'o', 'w', 's', 'e', 'r']

是否有理由不将字符串转换为这样的单个字符列表?我知道我可以使用For循环方法,也可以.append或+ concatenate(看起来都太乏味了!),但是我找不到任何使用+ =来提及的内容。因此,既然我是新手,我想我应该问为什么在养成将来会惹上麻烦的坏习惯之前不这样做呢。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我认为这会有所帮助:Why does += behave unexpectedly on lists?

关于“是否有理由不将字符串转换为这样的单个字符列表”的问题。我认为这取决于您的目的。如果需要拆分字母,将非常方便。如果您不想拆分字母,请不要使用它。

答案 1 :(得分:0)

字符串是数组的一种类型,因此它的行为类似于列表。

>>> # This way you would do it with a list:
>>> list('wowser')
['w', 'o', 'w', 's', 'e', 'r']
>>> lst=list('wowser')
>>> a='w'
>>> a is lst[0]
True

>>> # The String Version:
>>> strng = 'wowser'
>>> a is strng[0]
True

>>> # Iterate over the string like doing it with lists:
>>> [print(char) for char in 'wowser']
w
o
w
s
e
r
>>> [print(char) for char in ['w', 'o', 'w', 's', 'e', 'r']]
w
o
w
s
e
r

w3schools.com docs.python.org