程式亂寫也可以動,要怎麼寫的好或易於閱讀,就得花上一番功夫去學習寫作技巧。
這支影片會和你分享一些基本的知識點,實戰技巧基本上當代程式語言開發都能使用
不過每個時代會有不同的想法跟觀點,不同的團隊也會有不一樣的慣例,希望這次的內容能夠給你一些不一樣的想法
喜歡影片的話!可以幫忙點個喜歡以及分享、訂閱唷!😘
章節:
00:00 提升品質的影響
01:29 有意義的命名比簡寫更好
03:01 限制傳入參數數量
05:03 簡化條件表達式
06:37 變數定義範圍限制
08:28 一次只做一件事
10:35 Early return
━━━━━━━━━━━━━━━━
🎬 觀看我的生活廢片頻道: https://bit.ly/2Ldfp1B
⭐ instagram (生活日常): https://www.instagram.com/niclin_tw/
⭐ Facebook (資訊分享): https://www.facebook.com/niclin.dev
⭐ Blog (技術筆記): https://blog.niclin.tw
⭐ Linkedin (個人履歷): https://www.linkedin.com/in/nic-lin
⭐ 蝦皮賣場: https://shopee.tw/bboyceo
⭐ Github: https://github.com/niclin
⭐ Podcast: https://anchor.fm/niclin
━━━━━━━━━━━━━━━━
✉️ 合作邀約信箱: niclin0226@gmail.com
#前端 #後端 #工程師

python html變數 在 Re: [問題] 全域變數問題- 看板Python 的推薦與評價
1. 你所說的「全域變數」其實是 module 的 property。在 python 中,module 是一個
物件,「全域變數」是物件上的屬性。
2. `global` 關鍵字只在 function 內有意義,會把指定的變數名稱 bind 到「全域變
數」。
3. 換句話說,在 A module 內使用 global foo 會指向 A.foo,在 B module 內使用
global foo 會指向 B.foo。
4. from ... import ... 的作用是「搜尋指定的 module」並「將指定 property 的值
assign 給目前 scope 內指定的變數」。如果把 from Name import MyVariable 寫
在 function 內,效果就是「把 Name.MyVariable 的值指定給區域變數
MyVariable」。
程式碼存成一個新檔案然後執行︰
import Main
import Name
print(Main.MyVariable, Name.MyVariable)
「區域變數」用來稱呼 function 內的變數。雖然定義在 module root 的變數不會在
不同的 module 中共用,我們還是把它們稱為 globals。
例︰
a = 1
b = 1
print(id(a), id(b), a, b)
b = 2
print(id(a), id(b), a, b)
--
額外補充︰Python 沒有跨模組的的全域 "binding",但是你可以使用 builtins module
定義一個所有檔案都能存取的變數︰
import builtins
builtins.MyVariable = 123
但是除非你有一個好理由,否則請不要這麼做。這個 module 是設計用來定義內建
函式和常數的。
--
參考︰
* https://docs.python.org/3/library/builtins.html
* https://docs.python.org/3/faq/programming.html#how-do-i-share-global-variables-across-modules
(縮︰https://is.gd/zKqV2u)
--
ヾ(;ω;) ヾ(;ω;)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.8.82 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1559578849.A.7A5.html
這兩件事實不衝突︰
id 相同時 => 值會相同
值相同時 => id 不一定相同
(定義一下何謂「相同的值」︰兩個物品擁有完全相同的形狀與內容)
我應該把「變數內的值」寫成「變數指向的物件」會更清楚。(註︰可以想成 Python
中的值都是物件,包括數字或字串。對變數 assign 時並不會覆寫舊的記憶體空間,而
是把變數指向新的物件。)
id() 回傳的是物件的「唯一識別符號」,當兩個物件同時存在,且兩個物件的 id 都相
同時,代表兩個物件是同一個物件。(不同時期的物件可能會共用同個 id)
至於 id() 回傳的是記憶體位址也是正確的,不過這件事是 CPython implementation
detail。
參考︰https://docs.python.org/3/library/functions.html#id
我想說明的是,物件的 id 和原 PO 的問題沒有太大的關係。原 PO 可以考慮以下的程
式碼︰
a = "123"
b = a
a = ""
print(b) # result?
再考慮以下︰
# a.py
a = "123"
def change():
global a
a = ""
# b.py
from a import a as b, change
change()
print(b) # result?
然後就是你的問題︰
# a.py
a = "123"
def change():
global a
a = ""
# b.py
from a import a, change
change()
print(a) # result?
※ 編輯: eight0 (36.225.8.82 臺灣), 06/04/2019 12:34:57
※ 編輯: eight0 (36.225.8.82 臺灣), 06/04/2019 12:42:15
※ 編輯: eight0 (36.225.8.82 臺灣), 06/04/2019 12:43:48
※ 編輯: eight0 (36.225.8.82 臺灣), 06/04/2019 12:50:40
... <看更多>