使用列表推导,创建x中使用的所有字母的列表。
x = ‘December 11, 2018’
我尝试写出每个字母,但收到语法错误!
答案 0 :(得分:0)
在Python中,字符串充当列表;将列表转换成一个集合(只有唯一的值)然后再返回一个列表更加容易和快捷:
unique_x = list(set(x))
或者如果您必须使用列表理解:
used = set()
all_x = "December 11, 2018"
unique_x = [x for x in all_x if x not in used and (used.add(x) or True)]
答案 1 :(得分:0)
x = "December 11, 2018"
lst = [letter for letter in x]
print(lst) # test
输出:
['D', 'e', 'c', 'e', 'm', 'b', 'e', 'r', ' ', '1', '1', ',', ' ', '2', '0', '1', '8']
答案 2 :(得分:0)
您可以像这样进行列表理解:
x = ‘December 11, 2018’
new_list = [letter for letter in x]
print(new_list)
# Output
# ['D', 'e', 'c', 'e', 'm', 'b', 'e', 'r', ' ', '1', '1', ',', ' ', '2', '0', '1', '8']
或者,您可以跳过列表理解,而只需使用new_list = list(x)
即可获得相同的结果。
如果只需要字母而没有空格,则可以在x上使用.replace,例如:x.replace(' ','')
或在列表理解中添加if子句:
new_list = [letter for letter in x if letter != ' ']
答案 3 :(得分:0)
这应该有效
x = list('December 11, 2018')
print(x)
result = []
for item in x:
try:
int(item)
except ValueError:
if item == "," or item == " ":
pass
else:
result.append(item)
print(result)
"""
Output:
['D', 'e', 'c', 'e', 'm', 'b', 'e', 'r']
"""
如果仅使用该格式的日期,则可以这样做
x = "December 11, 2018".split()
print(x[0])
"""
Output:
'December'
"""