現(xiàn)代計(jì)算機(jī)和編程的起源和推動(dòng)力量主要源自美國,再加上26個(gè)字母很便于表示(算上大小寫,,6位bit就夠了),,因此英語一直是編程領(lǐng)域的不二之選。但這就給部分非英語國家的編程學(xué)習(xí)者帶來一些困擾,。以至于有些人還沒開始學(xué),就擔(dān)心自己的英語問題,。這完全沒必要,因?yàn)?strong>編程初期所用到的單詞很有限,,你就當(dāng)做一個(gè)符號去記,也能很快熟悉,。而且我們一直在講的 Python,也可以“用中文”來編程,。 Python3 對于字符編碼這一塊做了很大改進(jìn),。帶來的一個(gè)額外功能就是,你可以使用中文作為變量名,。比如: >>> 名字 = '張三'
>>> 年齡 = 18
>>> print(名字, 年齡)
張三 18 注意,Python2 是不行的,。另外如果在代碼里寫中文,別忘了在開頭加上 上面這樣的寫法完全是符合語法的,,但我個(gè)人沒有習(xí)慣這么來命名,。不過非要這么來的,我們可以嘗試把教程里的“猜數(shù)字”代碼改一下(原版代碼見教程 22 課): from random import randint 使用中文變量名,執(zhí)行效果和原版完全一致(除非代碼的編碼出了問題),。更進(jìn)一步,,你還可以通過某些方式更改系統(tǒng)提供的函數(shù)名: from random import randint as 隨機(jī)整數(shù)
輸入 = input輸出 = print 這里牽涉到3個(gè)概念:
如果你還嫌不夠徹底,,有人給了更兇殘的解決方案:一個(gè)叫做“周蟒”的項(xiàng)目,,相當(dāng)于把 Python 翻譯成了中文,。(不過項(xiàng)目很久沒更新了,我在 py3 上安裝未成功) 在 py2 上通過 pip 即可安裝: pip install zhpy 之后就能通過 寫出來代碼是醬嬸兒的: 從 random 導(dǎo)入 randint 作為 隨機(jī)整數(shù)
定義 是否相等(參數(shù)1, 參數(shù)2):
如果 參數(shù)1 < 參數(shù)2:
打印 '太小了'
返回 假
如果 參數(shù)1 > 參數(shù)2:
打印 '太大了'
返回 假
如果 參數(shù)1 == 參數(shù)2:
打印 '猜中了!'
返回 真
答案 = 隨機(jī)整數(shù)(1, 100)
打印 '猜猜我想的是幾?' 幾乎幫你把所有基礎(chǔ)語法都轉(zhuǎn)成了中文,,甚至還可以用 emoji 表情……之前有同學(xué)對猜數(shù)字代碼的理解還有疑惑,,尤其是 bingo 這個(gè)變量,那如果寫成這樣,,是不是更容易理解一點(diǎn)呢,??? 除此之外,還有不少中文編程語言,,其中最出名的莫過于“易語言”。雖然科班出身的程序員都不太看得上這種語言,,但不得不承認(rèn),,它在我國的草根黑客圈中有著廣泛的群眾基礎(chǔ),。 另外,我還發(fā)現(xiàn)了一個(gè)有趣語言,,叫 PerlYuYan,??疵志椭朗腔?Perl,但讓你想不到的是,,它將 Perl 翻譯成了文言文……比如官方示例里的代碼: 用警兮用嚴(yán),。
印道
一至一
哉兮
印編曰雜申
雜申矣
又纖曰龍鼠矣
又曰
一矣
亂曰
國無人莫我知兮 又何懷乎故都
既莫足與為美政兮 吾將從彭咸之所居
資曰
印重一至一兮
重起一至十合始印終 是不是感到不明覺厲,!但實(shí)際上也就是字面上的翻譯,。比如 看了這些中文寫出的代碼,,你現(xiàn)在有啥想法,? 最后還是說句,,盡管可以用中文寫代碼,盡管有大量的中文資料,、教程、文檔,,就算你自己也接受使用中文來學(xué)習(xí)編程甚至寫代碼,,我還是強(qiáng)烈建議你盡量提升下英文,,逼著自己去看報(bào)錯(cuò)、看原版文檔,、看 StackOverflow 上的問答,,哪怕一開始你用翻譯工具慢慢查。英語能力雖然對你編程起步的下限影響不大,,但對你編程發(fā)展的上限至關(guān)重要。和學(xué)編程一樣,,這是個(gè)長期的過程,堅(jiān)持下去總會(huì)有提升的,。 之前我們還做過一個(gè)整理編程英語高頻詞匯的小項(xiàng)目,,有需要的可以拿去參考:《Python英語高頻詞匯表》,,希望對你有所幫助,。 |
|