Python練習題答案: 更換所有項目【難度:1級】--景越Python編程實例訓練營,1000道上機題等你來挑戰

更換所有項目【難度:1級】:

答案1:

def replace_all(obj, find, replace):
  if isinstance(obj, str):
    return obj.replace(find, replace)
  elif isinstance(obj, list):
    return [x if x != find else replace for x in obj]

答案2:

def replace_all(obj, find, replace):
    result = [el if el != find else replace for el in obj]
    return ''.join(result) if isinstance(obj, str) else result​

答案3:

def replace_all(obj, find, replace):
    lst = [ replace if find == x else x for x in obj]
    if isinstance(obj, str):
        return "".join(lst)
    else:
         return lst​

答案4:

def replace_all(obj, old, new):
    if isinstance(obj, str):
        return obj.replace(old, new)
    return [new if a == old else a for a in obj]

答案5:

def replace_all(obj, old, new):
    try:
        return obj.replace(old, new)
    except:
        return [i if i != old else new for i in obj]

答案6:

def replace_all(obj, find, replace):
    for i, o in enumerate(obj):
        if o == find:
            try:
                obj[i] = replace
            except:
                obj = obj.replace(obj[i], replace, 1)
    return obj​

答案7:

def replace_all(obj, find, replace):
    if type(obj) is list:
        return [replace if x == find else x for x in obj]
    return obj.replace(find,replace)

答案8:

def replace_all(obj, find, replace):
    cons = ''.join if isinstance(obj, str) else list
    return cons(replace if x == find else x for x in obj)

答案9:

def replace_all(obj, to_replace, replace_with):
    if isinstance(obj, str):
        return obj.replace(to_replace, replace_with)
    return [replace_with if i == to_replace else i for i in obj]

答案10:

def replace_all(obj, find, replace):
    if isinstance(obj, str):
        return obj.replace(find, replace)
    return [replace if item == find else item for item in obj]



Python基礎訓練營景越Python基礎訓練營QQ羣

在這裏插入圖片描述
歡迎各位同學加羣討論,一起學習,共同成長!

發佈了682 篇原創文章 · 獲贊 8 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章