這三個功能是我學習指南的一部分,非常感謝您的幫助。 在每種情況下,該函數都會返回一個值(所以使用return語句):它不會打印其任何參數的值(不打印語句)或mutate(更改其值)。使用Python的基本列表操作
1)repl函數有三個參數: oold是任何值; ?新是任何值; xs是一個列表。
Example:
>>> repl('zebra', 'donkey', ['mule', 'horse', 'zebra', 'sheep', 'zebra'])
['mule', 'horse', 'donkey', 'sheep', 'donkey']
它返回一個新的列表,通過用new來替換xs中的每一個old。
它不得改變列表xs;即從函數返回後,爲xs給出的實際參數必須是以前的值。
>>> friends = ['jules', 'james', 'janet', 'jerry']
>>> repl('james', 'henry', friends)
['jules', 'henry', 'janet', 'jerry']
>>> friends
['jules', 'james', 'janet', 'jerry']
2)搜索功能在列表中查找值。它有兩個參數: ◦y是要搜索的值。 ◦xs是正在搜索的列表。
它返回y中第一次出現的索引,如果它發生的話;否則爲-1。
Examples:
>>> words = ['four', 'very', 'black', 'sheep']
>>> search('four', words)
0
>>> search('sheep', words)
3
>>> search('horse', words)
-1
3)雙打功能被賦予號碼的列表,並返回包含每個數字的雙打在給定列表的新列表。
Example:
>>> doubles([1, 3, 7, 10])
[2, 6, 14, 20]
它必須發生變異的定列表:
>>> salaries = [5000, 7500, 15000]
>>> doubles(salaries)
[10000, 15000, 30000]
>>> salaries
[5000, 7500, 15000]
這是不使用除追加任何列表的方法來完成。 (特別是,您可能不會使用索引或計數作爲搜索功能。)
儘管您可以使用list len函數和列表操作+,*,索引,切片和==來比較列表或元素。您將需要使用其中一些但不是全部。
任何幫助,如我在介紹中提到的非常感謝。
到目前爲止,我所擁有的就是。
def repl (find, replacement, s):
newString = ''
for c in s:
if c != find:
newString = newString + c
else:
newString = newString + replacement
return newString
def search(y, xs):
n = len(xs)
for i in range(n):
if xs[i] == y:
return i
return -1
和....
def search(key,my_list):
if key in my_list:
return my_list.index(key)
else:
return
我不知道需要else語句後可能返回的。
您有什麼問題? – Paco
我沒有得到正確的答案,如示例中所示。還有最後兩個問題的代碼,我還沒有編譯。我試圖用這種方式來恢復記憶,並且在記住正確的解決方案時遇到了一些麻煩。 – HTCone
你可以用你在這裏添加的細節來編輯你的文章嗎?你將有更好的機會找到正確的答案 – Paco