- 字符串有他們所有的字母轉換爲大寫
- 整數和浮點數有其價值增加1
- 布爾值被否定(假變真,真亦假)
- 列表被替換的單詞「列表」
我現在遇到的問題是,我們正在改變列表本身,而不是如果使副本返回。
以下是我迄今所做的:我需要一個函數,它接受一個列表作爲輸入,但返回none和改變輸入在以下幾個方面:
def mutate_me(my_list):
'''(list)-> NoneType
returns my_list mutated the same way
as the function copy_me
>>>test_list = [1, 2.5, "1abc", [1, 2, 3], False]
>>>mutate_me(test_list)
>>>test_list = [2, 3.5, "1ABC", "List", True]
>>>test_list = [2, False, ["list"], "Hello", 1.0]
>>>mutate_me(test_list)
>>>test_list = [3, True, "List", "HELLO", 2.0]
'''
# go through every element in the list
# check there type and based upon there
# type apply the rule
for element in my_list:
if(type(element) == str):
for i in element:
if(i.isalpha()):
element = element.upper()
my_list.append(element)
elif(type(element) == int or type(element) == float):
element = element + 1
elif(type(element) == bool):
element = not element
elif(type(element) == list):
element = "List"
else:
element
OP不希望的小樣本返回,但改變輸入 –
這不會改變原來的列表,但我的問題是我怎麼能改變原來的列表,我需要了解的事情之一,我可以不要把我的頭包裹起來。 –
我修好了,所以你可以現在檢查一下。它會工作。 – Nf4r