-1
我有一組3個函數以及一個名稱列表。我試圖循環這些名稱併爲每個名稱調用一個函數。我的蟒蛇看起來像這樣...列表中每個項目的Python調用函數
def testfunc1():
print("This is a test function 1")
#print(name)
def testfunc2():
print("This is a test function 2")
#print(name)
def testfunc3():
print("This is a test function 3")
#print(name)
name_list = ["John", "Joe", "Paul" "George", "Mark", "Craig", "Norman"]
fn_list = [testfunc1(), testfunc2(), testfunc3() ]
for i, name in enumerate(name_list):
[i % len(fn_list)]()
print(name)
而且我想這樣的事情發生......
John - Run testfunc1
Joe - Run testfunc2
Paul - Run testfunc3
George - Run testfunc1
Mark - Run testfunc2
Craig - Run testfunc3
Norman - Run testfunc1
我有幾個問題,我當前的代碼,第一個是,目前我得到以下錯誤...
TypeError: 'list' object is not callable
任何人都可以幫我解決嗎?
你忘了提供'fn_list'索引到 – jonrsharpe
你說'[I%LEN(fn_list)]',但迄今爲止,這只是一個數目由括號包圍。要獲得該位置的函數,你需要'fn_list [i%len(fn_list)]'。 – zondo
您需要將'print()'調用放在另一個函數調用的上方。然後,使print()調用print(name.ljust(name_list中的n爲len(len(n)),end =「」)'在你的測試函數中打印' - 運行testfunc# '是功能號碼。 – zondo