【发布时间】:2021-10-26 01:37:53
【问题描述】:
我的目的是将输入作为字符串并返回该字符串的小写字母列表,不重复,不使用标点符号,按字母顺序排列。例如,输入“快乐!”会得到 ['a','h','p','y']。我尝试使用 join 函数来摆脱我的标点符号,但不知何故它不起作用。有人知道为什么吗?另外, sort.() 可以对字母进行排序吗?我是否以正确的方式使用它?谢谢!
def split(a):
a.lower()
return [char for char in a]
def f(a):
i=split(a)
s=set(i)
l=list(s)
v=l.join(u for u in l if u not in ("?", ".", ";", ":", "!"))
v.sort()
return v
【问题讨论】:
-
那是您的实际代码吗?因为
l.join这行有错误,因为l是列表类型。 -
欢迎来到 SO。请澄清您所说的“它不起作用”是什么意思。一方面,a.lower() 不会修改字符串
a。您需要将a.lower()设置为其他变量,并在下一行的列表理解中使用它。
标签: python function sorting join