Array.extend(string) 添加每个字符而不仅仅是字符串
Array.extend(string) adds every character instead of just the string
我正在尝试将元素扩展到 Python 中的列表,但是,它没有扩展索引 'i' 中的字符串,而是扩展了索引 [=23] 中字符串的每个字符=].
例如,我有一个名为 'strings' 的列表,其中只有一个字符串 'string1' 和一个名为 'final_list'.
的空列表
我想将 'strings' 的第一个元素扩展到 'final_list',所以我 final_list.extend(strings[0])
。但不是 'final_list' 以长度 1 结尾,对应于插入的字符串,列表以长度 7 结尾。
如果有帮助,这是我的代码:
con = connect()
i = 0
new_files = []
while i < len(files):
info_file = obter_info(con, files[i])
if info_file [5] == 0: #file not processed
new_files.append(files[i])
i += 1
有谁知道我怎样才能让它工作?
试试那个:
final_list.extend([strings[0]])
或:
final_list.append(strings[0])
extend
方法将一个可迭代对象作为参数,解压该可迭代对象并将每个元素单独添加到调用它的列表中。在你的例子中,你是 "extending" 一个带有字符串的列表。字符串是可迭代的。因此,字符串是 "unpacked" 并且每个字符都是单独添加的:
>>> d = []
>>> d.extend('hello')
>>> print(d)
['h', 'e', 'l', 'l', 'o']
如果您只想将一个列表的一个元素添加到另一个列表,请使用 append
。否则,将字符串包围在列表中并重复 extend:
>>> d = []
>>> d.extend(['hello'])
>>> print(d)
['hello']
我正在尝试将元素扩展到 Python 中的列表,但是,它没有扩展索引 'i' 中的字符串,而是扩展了索引 [=23] 中字符串的每个字符=].
例如,我有一个名为 'strings' 的列表,其中只有一个字符串 'string1' 和一个名为 'final_list'.
的空列表我想将 'strings' 的第一个元素扩展到 'final_list',所以我 final_list.extend(strings[0])
。但不是 'final_list' 以长度 1 结尾,对应于插入的字符串,列表以长度 7 结尾。
如果有帮助,这是我的代码:
con = connect()
i = 0
new_files = []
while i < len(files):
info_file = obter_info(con, files[i])
if info_file [5] == 0: #file not processed
new_files.append(files[i])
i += 1
有谁知道我怎样才能让它工作?
试试那个:
final_list.extend([strings[0]])
或:
final_list.append(strings[0])
extend
方法将一个可迭代对象作为参数,解压该可迭代对象并将每个元素单独添加到调用它的列表中。在你的例子中,你是 "extending" 一个带有字符串的列表。字符串是可迭代的。因此,字符串是 "unpacked" 并且每个字符都是单独添加的:
>>> d = []
>>> d.extend('hello')
>>> print(d)
['h', 'e', 'l', 'l', 'o']
如果您只想将一个列表的一个元素添加到另一个列表,请使用 append
。否则,将字符串包围在列表中并重复 extend:
>>> d = []
>>> d.extend(['hello'])
>>> print(d)
['hello']