python新手關於編寫函式的問題

2021-04-12 18:01:09 字數 1168 閱讀 6380

1樓:匿名使用者

def fun(ary):

for x in ary:

if isinstance(x, int):

return 'min: %s' % min(ary), 'max: %s' % max(ary)

else:

return "pl num"

print fun([3, 8, 1, 4])print fun(['a', 'b', 'c', 'd'])你c學得不錯哦!

python 程式編寫 新手問題

2樓:匿名使用者

程式本來就是練出來的。一定要自己想辦法練出來。練不出來,就找個例子背出來。

不過老師至少會給你一個思路,如果連思路都不給你,就不稱職了。不是重視實踐,而是叫放羊。

我幫你理一下思路。python語法,你應該是沒有問題的。只是不會python的程式設計模式。所以才會問怎麼做class。

通常做程式是這樣子,1.理需求  2.做模型(動態的流程,靜態的結構或者是物件) 3.設定**結構 4。編寫**

你現在這樣子,最好一個程式就搞定。所以沒有**結構。流程也簡單,就是使用者移動棋子,或者是兩個使用者移動棋子,然後計算機判斷是否出錯。

給提示。 應該還沒有讓計算機自己有ai的程度。

這樣的程式的資料結構通常包括:棋盤棋子結構,儲存當前棋盤與棋子狀態,一個陣列就搞定。

程式的邏輯就是一個,move棋子,如果出錯,就rollback,否則就判定落子,或者是吃子。

另外這個程式是有使用者互動的。所以需要一個輸出介面,還需要一個輸入。如果你選擇gui方式,比較的複雜,對於初學者太難。所以通常是用輸入的。

這樣就有一個使用者輸入字串,然後你解析出使用者意圖,再列印輸出。

這樣程式就分成幾個模組:

主模板,呼叫輸入模組,計算模組,顯示輸出

輸入模組,函式,raw_input方式拿到,player的id,然後棋子名,移動方位

計算模組,函式,在棋盤陣列找一到棋子,然後試圖移動,並將結果返回

輸出模組,輸出當前移動棋子的結果,並顯示棋盤

劃分模組後,就可以做了。不管你是按物件導向,還是程序導向,結果一樣的。象這樣的場景,物件導向的方法就是自己找不自在。所以是程序導向的函數語言程式設計。

物件導向最好適合一個可擴充套件的中型程式,比如soa這樣的場景。

python的新手問題,Python新手問題,基本列表解析

python中,列表是所謂的 可迭代物件 這種物件支援迭代協議,即一系列python保留方法,能夠在每一次迭代中自動返回一個值。以上為概念 在python中,python可以在for迴圈中自動為可迭代物件進行迭代,即 可以這樣寫 major cis geog aeis math for i in m...

python中關於函式呼叫的問題提

def add pram1,pram2 result pram1 pram2return result def judgeadd a 1 b 3 if a add 1,2 print true elif b add 1,2 print false else return 0 judgeadd 執行這...

編寫支援任意數量引數的求和函式,3 編寫函式實現任意兩個整數求和,在主函式中輸出計算結果。

include include float mysum int nr num,float sum 0.0 int i va list ap va start ap,nr num for i 0 iez include include using namespace std int mysum int...