如何解决您可以将字符串中的字符添加到列表中吗?
我想知道是否可以使用字符串,例如str(input())
并将其拆分为单独的 char
,然后将它们添加到 list
。我正在尝试制作一个简单的脚本(类似于刽子手游戏),一开始我是这样写的:
x=input('Choose word: ').lower()
letters=[]
letters.append(list(x))
print(letters)
但此代码将整个 list
附加到 list
而不是单个 char
s
编辑:这输出 [['o','u','t','p','t']]
意味着整个列表被附加为一个项目,但我希望它输出 ['o','t']
,我如何让它附加单个字符而不是整个列表>
解决方法
您只是将字符列表包装在另一个列表中。
试试这个单线:
print(list(x))
如果你想删除一个字符:
letters = list(x)
letters.remove('o')
print(letters)
,
使用扩展而不是追加函数。
#Extend
x=input('Choose word: ').lower()
letters=[]
letters.extend(list(x))
print(letters)
# ['p','y','t','h','o','n']
并且要从列表中删除字符同时在删除后将位置保留为空白,请在列表中使用替换:
y=input("Choose a letter to remove: ").lower()
removed=[s.replace(y,'') for s in letters]
print(removed)
#['p','','n']
我希望这会有所帮助,除非它与您想要的不同。然后告诉我。否则,祝你编码愉快!
,您不需要创建一个空列表,然后用单个字母填充它。只需将 list()
函数直接应用于用户输入即可创建它:
letters = list(input('Choose word: ').lower())
print(letters)
要添加来自其他用户输入的字母,请使用与 .extend()
方法相同的方法:
letters.extend(input('Choose word: ').lower()) # No need to use list() here
,
一个简单的单衬:
x = input().lower().split()
print(x)
这里我们接受输入,然后我们将其转换为小写,然后使用 split 函数将字符串拆分为空格,您可以将字符串拆分为您想要的任何字符串,只需给出您想要拆分的字符串作为 split 函数中的参数,例如:
x = input().lower().split(',')
print(x)
这将在 ',' 处拆分,因此您可以提供 csv 格式的输入
,您可以使用 +
运算符(最好采用扩充赋值语句的形式,即 +=
,用于将列表扩展为可迭代对象。
此处无需使用 list()
函数,因为字符串是可迭代的:
letters = []
letters += input('Choose word: ').lower()
print(letters)
,
这输出 [['o','u','p','t']]
意味着整个
列表作为一项附加,但我希望它输出 ['o','t']
根据您的评论,您可以使用:
x = [*input('Choose word: ').lower()]
print(x)
# ['p','n']
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。