2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

Python娘

萌娘百科,萬物皆可萌的百科全書!轉載請標註來源頁面的網頁連結,並聲明引自萌娘百科。內容不可商用。
跳至導覽 跳至搜尋
Python logo(新).png
萌娘百科歡迎您參與完善本條目☆Kira~
歡迎正在閱讀這個條目的您協助編輯本條目。編輯前請閱讀Wiki入門條目編輯規範,並查找相關資料。萌娘百科祝您在本站度過愉快的時光。
Commons-emblem-success.svg
本文部分內容經作者團子授權轉載至萌娘百科。原文網址:http://python.jobbole.com/63311/
Life is short,you need Python.
人生苦短,我用蟒蛇[1]
——Bruce Eckel
Python.jpg
基本資料
本名 Python
別號 派森、大蟒
身高 153cm
體重 44kg
年齡 30歲
生日 1994年1月26日
血型 A型
星座 水瓶座
萌點 眼鏡藍髮短髮大小姐連衣裙蛇控
出身地區 荷蘭阿姆斯特丹
活動範圍 全球
所屬團體 Python軟件基金會
親屬或相關人
爸爸:Guido van Rossum;
姐妹:C語言娘JavaScript娘Arcaea

Python娘是程序設計語言Python的擬人化萌娘。

簡介

眼鏡藍髮短髮、個性認真(縮進)所有編程語言娘條目唯一依賴縮進來區分代碼塊範圍的,對蟒蛇有種奇妙的興趣,喜歡簡單簡潔的東西,有個尋找自我了無音訊的 姐姐

Python娘和其他程序設計語言娘非常玩得來,關係最好的大概是C語言娘了,因為幾乎所有事都是C語言娘幫她干的。

雖然外表看起來超嚴格超認真,但是Python娘其實很好相處推倒哦,平易近人,端莊得體。

據稱可用於交♂易

不過聽說和妹妹關係不是很好... 語法不兼容

# 在前面加上"#"的語句會被Python娘忽視,除非放在文件頭用於聲明解釋器或編碼。

''' ''' Python中多行註釋使用三個單引號(''')或者三個雙引號(""")來標記,而實際上這是多行字符串的書寫方式,並不是Python本身提倡的多行註釋方法。

Python由於開發定位上就是解釋性語言,因此導致了一些特性:

  • 語法多樣,語法糖豐富。
  • 運行速度較慢。廢話,逐行解釋能不慢嗎?
  • 不存在官方打包手段,第三方打包手段效果不佳。[2]

Python娘:不許說人家壞話~

現已披上信息技術娘的馬甲,加入高考娘的團隊[3]

Python語言程序設計已經光榮的成為計算機二級考試[4]的科目之一了。

人設

由Guido的父親養大的深閨中的大小姐,前世是ABC語言娘。她出身於荷蘭的阿姆斯特丹,但在小時候就搬到了美國,父親也在家裏使用英語。

她個性隨和。最出名的是她聽C++宣佈「想出去旅行一趟改變一下形象。200x年回來哦」出門旅行後(結果回來的時候已經2011年了……),放言說「我也稍稍出門旅行一下,公元3000年再回來哦」後出門數年未歸。

雖然有着這樣冒失的行動,但多虧抱着「養成大家都喜愛的孩子」的心願的Guido父上大人的教育,實際上和她接觸後會覺得她非常容易親近。

前些天,她來到作者的朋友的公司打工(她現在似乎在邊上大學邊打工),被人們評價為「能充分融入工作、八面玲瓏、給我們幫了大忙」。她不怎麼說多餘的話,彬彬有禮的樣子,被評價為是在「天真爛漫、自由第一」的人眾多的業界中與眾不同的存在。

據說她擅長的科目是數學,經常看到她輕鬆地解決各種統計相關的難題。喜歡穿白色的連衣裙或淺粉色的開衫這樣清新的服裝。

實際上她還喜歡爬行動物,據說在家裏還有養(聽說是受父親愛看電視節目《巨蟒飛行馬戲團》的影響)。粉絲們經常討論「她會給寵物們起什麼樣的名字呢?」這樣的話題。大多得出的都是「肯定是Monty吧」這樣的結論。會不會飛就不得而知了。(估計指的是英國的六人喜劇團體Monty Python的作品The Flying Circus)取名為ARC色盲模式!

Python之禪

Tim Peters在Python娘誕生之初,為她寫了一首詩。 (在shell中輸入import this獲得)

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!


反過來再看看實現它的代碼

#This.py

s = """Gur Mra bs Clguba, ol Gvz Crgref

Ornhgvshy vf orggre guna htyl.
Rkcyvpvg vf orggre guna vzcyvpvg.
Fvzcyr vf orggre guna pbzcyrk.
Pbzcyrk vf orggre guna pbzcyvpngrq.
Syng vf orggre guna arfgrq.
Fcnefr vf orggre guna qrafr.
Ernqnovyvgl pbhagf.
Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf.
Nygubhtu cenpgvpnyvgl orngf chevgl.
Reebef fubhyq arire cnff fvyragyl.
Hayrff rkcyvpvgyl fvyraprq.
Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff.
Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg.
Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu.
Abj vf orggre guna arire.
Nygubhtu arire vf bsgra orggre guna *evtug* abj.
Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn.
Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn.
Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!"""#加密的字符串

d = {}#创建空字典
for c in (65, 97):#65是ASCII里大写字母A的代码,97是小写字母a的代码
    for i in range(26):#以此延后的26个字母
        d[chr(i+c)] = chr((i+13) % 26 + c)#配置正确的解密字典

print("".join([d.get(c, c) for c in s]))#使用字典还原s中的字母并存进列表中,再转化为字符串

真的是Beautiful、Explicit、Simple、Complex,十分好的Readability

直譯

優美勝於醜陋[注 1]
明了勝於晦澀[注 2]
簡潔勝於複雜[注 3]
複雜勝於凌亂[注 4]
扁平勝於嵌套[注 5]
間隔勝於緊湊[注 6]
可讀性很重要yyds[注 7]
即便假借特例的實用性之名,也不可違背這些規則[注 8]
不要包容所有錯誤,除非你確定需要這樣做[注 9]
當存在多種可能,不要嘗試去猜測
而是儘量找一種,最好是唯一一種明顯的解決方案[注 10]
雖然這並不容易,因為你不是 Python 之父[注 11]
做也許好過不做,但不假思索就動手還不如不做[注 12]
如果你無法向人描述你的方案,那肯定不是一個好方案;反之亦然[注 13]
命名空間是一種絕妙的理念,我們應當多加利用[注 14]
[5]

  1. Python以編寫優美的代碼為目標
  2. 優美的代碼應當是明了的,命名規範,風格相似
  3. 優美的代碼應當是簡潔的,不要有複雜的內部實現
  4. 如果複雜不可避免,那代碼間也不能有難懂的關係,要保持接口簡潔
  5. 在不增加工作量的情況下,面向過程比面向對象好;如果某函數隻被調用一次,那就不如不要建這個函數
  6. 優美的代碼有適當的空行,不要一大坨代碼解決問題與語文作文守則「不要一逗到底」有異曲同工之妙
  7. 優美的代碼應該具有易懂的命名,適當而不過多的空行,以及豐富的註釋而寫註釋正是程式設計師最討厭的事情之一
  8. 這些規則至高無上
  9. 精準地選擇某類異常進行處理,不要except Exception: ...(除非你不知道可能會發生什麼異常,需要知道異常信息)
  10. 如果不確定,就用窮舉法
  11. 這裏的 Dutch 是指 Guido
  12. 動手之前要細思量
  13. 方案測評標準
  14. Python中import...使用對應的庫函數依然需要庫名.函數名,類似C++中標準庫命名空間的使用方法std::,而from...import *又類似於using namespace std;取消了庫名/命名空間。可能是C的兩個妹妹長得比較像吧?
六言

優雅勝於醜陋,直白勝於委婉
簡單勝於複雜,複雜勝於混亂
單層勝於嵌套,稀疏勝於稠密
以上六條之外,可讀也很重要
即使情況特殊,規則不應打破
實用勝於純淨,儘管優雅更好
錯誤不應忽視,除非顯式沉默
面對模稜兩可,拒絕猜的誘惑
明顯解決辦法,應當只有唯一
方案不盡明顯,除非來自荷蘭
肝爆勝於摸魚,不咕勝於咕咕
但是立即完成,通常不如咕咕
請君向人解釋,實現問題方法
難以解釋為劣,通俗易懂為好
命名空間極妙,咱們一起來搞

使用Python編輯

萌娘百科所使用的MediaWiki並不支持直接解析Python代碼,不過可以通過Python創建維護wiki的機械人(bot),從而實現大量編輯或者刪除等維護操作。

具體使用Python編輯的方法可參考:Help:使用Python編輯


外部連結與註釋

Wikipedia-logo-v2.svg
維基百科
提示您
  1. 英文單詞「python」的原意為「蟒蛇」。
  2. 在不使用參數的情況下大多數打包器都會把所有庫文件全部打包進去,導致程序打包後是原來的幾十~幾千倍。
  3. 2019版浙教版信息技術教材使用Python作為編程語言,使用Python編程的試題已於2023年1月浙江技術選考中首次出現。
  4. 全國計算機等級考試(National Computer Rank Examination,簡稱NCRE),是經原國家教育委員會(現教育部)批准,由教育部教育考試院(原教育部考試中心)主辦,面向社會,用於考查應試人員計算機應用知識與技能的全國性計算機水平考試體系。
  5. 其實這些註釋什麼具體的東西都沒講出來……聽君一席話,如聽一席話