[英]Using sets in a list comprehension
我正在嘗試做的事情:創建並打印一個單詞列表,其單詞的反寫在小寫單詞集中。 例如,“ timer”及其相反的“ remit”都在小寫單詞列表中。
我到目前為止所擁有的:
s = set(lowers)
[word for word in s if list(word).reverse() in s]
我只是得到一個空清單。
只需使用[::-1]
,這里就不需要使用list(),並且list(word).reverse()
返回None
因為它就地更改了列表。 您也可以使用"".join(reversed(word))
,但是我想word[::-1]
就足夠簡單了:
[word for word in s if word[::-1] in s]
In [193]: word="timer"
In [194]: print list(word).reverse()
None
In [195]: word[::-1]
Out[195]: 'remit'
In [196]: "".join(reversed(word))
Out[196]: 'remit'
list.reverse()
方法可將列表原地反向。 它的返回值為None
。 如果要反轉字符串,請使用word[::-1]
。
list.reverse()
在原處反轉列表,但不返回任何內容。 您需要"".join(reversed(list))
。
嘗試這個:
s = set(lowers)
[word for word in s if word.lower()[::-1] in s]
您應該使用[::-1]
反轉字符串-
[word for word in s if word[::-1] in s]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.