亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在列表中找到在 Python 中具有相同值的元素?

如何在列表中找到在 Python 中具有相同值的元素?

DIEA 2021-11-16 14:24:32
我的問題是,如果我的列表是...,我如何在列表中找到具有相同字符數的字符串?myList = ["Hello", "How","are", "you"]我希望它返回值為 3 的字符串上面列表中的示例...["How","are","you"]這是我試過的...def listNum(myList, x):    for i in range(len(myList)):        if i == x:            return(i)myList = ["Hello", "How","are", "you"]x = 3listNum(myList, x)
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

您的功能已關閉,因為您正在將列表索引與您嘗試匹配的值進行比較i == x。您想使用myList[i] == x. 但似乎您實際上想檢查長度,所以len(myList[i]) == x.

但是,我更喜歡迭代循環中的實際元素(或 Joran Beasley 在評論中指出的列表理解)。您還提到您想檢查是否為特定長度的字符串,因此您還可以添加對對象類型的檢查:

def listNum(myList, x):
    return [item for item in myList if type(item) is str and len(item) == x]


查看完整回答
反對 回復 2021-11-16
?
慕的地6264312

TA貢獻1817條經驗 獲得超6個贊

使用setdefault()方法。此解決方案應該為您提供映射到各自單詞的所有單詞長度的字典


代碼


myList = ["Hello", "How","are", "you"]


dict1 = {}

for ele in myList:

    key = len(ele)

    dict1.setdefault(key, [])

    dict1[key].append(ele)

輸出


我想這是您想要實現的輸出。


>>> print(dict1)

{5: ['Hello'], 3: ['How', 'are', 'you']}

您可以使用它來查詢字典并獲取與其字長相對應的單詞。例如dict1[5]會返回'hello'


查看完整回答
反對 回復 2021-11-16
?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

試試這個代碼。


代碼


def func_same_length(array,index):

    res = [array[i] for i in range(0,len(array)) if len(array[index]) == len(array[i]) and i!=index]

    return res




myList = ["Hello", "How", "are", "you"]

resSet = set()

for index in range(0,len(myList)):

    res = func_same_length(myList,index)

    for i in res:

        resSet.add(i)


print(resSet)

輸出


{'How', 'are', 'you'}


查看完整回答
反對 回復 2021-11-16
  • 3 回答
  • 0 關注
  • 435 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號