作者mejichoco (UoU)
看板Soft_Job
標題[請益] python 的寫法?
時間Tue Aug 3 20:21:30 2021
因為看了很多程式
有一些程式,特別愛寫
def~~~~~~~~~~~~~~~~~~~~~
但是有一些程式
卻都沒有寫def,只有寫 OOO = XXX 然後就寫下去了
而且好像是對岸的程式
都特別愛寫 def,先宣告之後,然後在定義實作函式
然後又接if __name__ == '__main__':
想問一下這樣的差別
謝謝!
EX:大陸寫法
def insert_img_to_excel(
filename,
by_col,
to_col,
img_folder
):
"""
插入图片到 excel
:param filename: 文件路径
:param by_col: 依靠列 (A, B, C ...)
:param to_col: 插入到列 (A, B, C ...)
:param img_folder: 图片源的文件夹
:return: None
"""
wb = load_workbook(filename)
ws = wb.active
但是台灣都直接寫成
wb = load_workbook(filename)# 插入图片到 excel
ws = wb.active #param filename: 文件路径
變成註解這樣子
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.137.62.27 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1627993292.A.ED5.html
1F:→ clang: 雖然好像讀的懂,但覺得原po表達能力不太好阿 08/03 20:25
對不起,我的表達能力不好! 我還要在學一學!
2F:→ clang: 先定義函數再用 __main__ 去跑的話,這個腳本可以拿去 im 08/03 20:30
3F:→ clang: port 而不會直接觸發到函數的內容;流水帳到底的程式在 i 08/03 20:30
4F:→ clang: mport 的當下會被執行 08/03 20:30
那這樣的缺點跟好處是? 易讀? 還是分為職業跟業餘的寫法?
5F:→ kangan987: google 都查得到。 08/03 20:37
不懂您的意思?
6F:→ oToToT: 看你想要幹嘛,一次性小script有時就會懶得把東西包好吧 08/03 20:37
def 比較正式就是了? 把裡面東西包起來就是了!
7F:推 clang: 視需求而定;我覺得能達成目的的程式都是好程式,可讀性反 08/03 20:38
8F:→ clang: 而比較被變數命名和註解影響 08/03 20:38
沒錯 可讀性是靠註解! 只是不懂這兩種寫法的差異就是了! 沒有好壞!
9F:推 yangs0618: 可讀性不只靠註解 08/03 20:42
10F:推 Jekk: 一樓就告訴你答案了..五樓講的那麼直白還不懂 真可愛 08/03 20:45
11F:→ OrzOGC: 一次性的寫到底 會多次用到就包起來 08/03 20:47
懂了! 但是有def的互相改寫很複雜!
12F:→ nono2588: 直接寫的比較常在notebook裡面看到~ 08/03 20:49
13F:噓 LinuxKernel: … 08/03 20:52
14F:→ iwami: 這跟大陸/台灣/職業/業餘都沒有關係,用法不同而已 08/03 20:53
15F:噓 Raymond0710: 有python板 08/03 21:13
16F:噓 lturtsamuel: 講中文? 08/03 21:19
17F:→ ou9810: 註解跟易讀性沒什麼關係,註解的用意是表明意圖 08/03 21:41
18F:→ ou9810: 如果程式碼可以明確表達意圖,就不需要註解 08/03 21:42
19F:噓 kkes0001: 和大陸有什麼關系嗎?純粹是您學藝不精吧? 08/03 22:00
的確是我學藝不精!XD
20F:噓 longlyeagle: sad 08/03 22:24
※ 編輯: mejichoco (101.137.62.27 臺灣), 08/03/2021 22:47:06
21F:噓 GLaDOS1105: 比起 Python 先練中文 08/03 22:56
22F:噓 KanzakiHAria: 講中文 08/03 23:27
23F:推 kuochuwon: 包起來的好處是之後不同程式都可以呼叫,沒包的話 08/04 02:31
24F:→ kuochuwon: 通常表示這段程式偏向實驗用途,用完就可以丟 08/04 02:32
25F:推 powenyu: 補血 08/04 03:22
26F:噓 l88: 補啥血 連函數都不懂 去對應的版好嗎? 這種基礎來這裡發? 08/04 06:03
27F:→ l88: 這種文去Python版問我覺得非常正常 來這裡問? 先看懂版標好嗎 08/04 06:03
28F:→ ura1210: 可讀性靠註解我是不是誤會了什麼 08/04 08:34
29F:→ sarsman: 加油 08/04 08:38
30F:推 jimabc: 推 某些推文可能以為軟體版是他管的吧 08/04 09:41
31F:噓 cia1099: 真的是很拉基的問題啊 08/04 10:36
32F:噓 mirror0227: 這不是學藝不精 是還沒開始學吧w 08/04 10:49
33F:推 wheels: testable 08/04 12:25
34F:噓 kyleJ: 雖然很有禮貌但這誤解多到不知道要從哪裡吐槽,隨便找一 08/04 13:37
35F:→ kyleJ: 個基礎教學都會有你要的答案,還能糾正你誤解的地方,總 08/04 13:37
36F:→ kyleJ: 之加油吧 08/04 13:37
37F:噓 aszx4510: 錯版 去python版 08/04 14:15
38F:→ papple23g: 還以為你要講lambda 原來是還沒懂基本的東西XD 08/08 03:44