python裡能不能用中文

2021-09-11 17:21:00 字數 3563 閱讀 4772

現代計算機和程式設計的起源和推動力量主要源自美國,再加上26個字母很便於表示(算上大小寫,6位bit就夠了),因此英語一直是程式設計領域的不二之選。但這就給部分非英語國家的程式設計學習者帶來一些困擾。以至於有些人還沒開始學,就擔心自己的英語問題。這完全沒必要,因為程式設計初期所用到的單詞很有限,你就當做乙個符號去記,也能很快熟悉。而且我們一直在講的 python,也可以「用中文」來程式設計

python3 對於字元編碼這一塊做了很大改進。帶來的乙個額外功能就是,你可以使用中文作為變數名。比如:

>>> 名字 = '張三'

>>> 年齡 = 18

>>> print(名字, 年齡)

張三 18

複製**

上面這樣的寫法完全是符合語法的,但我個人沒有習慣這麼來命名。不過非要這麼來的,我們可以嘗試把教程裡的「猜數字」**改一下(原版**見教程 22 課):

from

random

import

randint

def是否相等

(引數1

,引數2

):if

引數1<

引數2:

print

('太小了'

)return

false;if

引數1>

引數2:

print

('太大了'

)return

false;if

引數1==

引數2:

print

('猜中了!'

)return

true答案=

randint(1

,100

)print

('猜猜我想的是幾?'

)是否猜中

=false

while

是否猜中

==false

:猜測值

=int

(input

())是否猜中

=是否相等

(猜測值,答案

)複製**

使用中文變數名,執行效果和原版完全一致(除非**的編碼出了問題)。更進一步,你還可以通過某些方式更改系統提供的函式名:

from

random

import

randint

as隨機整數輸入=

input輸出

=print對=

true錯=

false整數=

intdef

是否相等

(引數1

,引數2

):if

引數1<

引數2:輸出(

'太小了'

)return錯;

if引數1

>

引數2:輸出(

'太大了'

)return錯;

if引數1

==引數2:輸出

('猜中了!'

)return對答案

=隨機整數(1

,100)輸出

('猜猜我想的是幾?'

)是否猜中=錯

while

是否猜中==錯

:猜測值=整數

(輸入())是否猜中

=是否相等

(猜測值,答案

)複製**

這裡牽涉到3個概念:

from random import randint as 隨機整數是引入模組時指定別名對 = true,就是乙個普通的變數賦值輸入 = input整數 = int,要理解這個用法,你需要有物件導向的認識:在 python 中函式也是一種物件,可以像普通值一樣賦值給變數。賦值之後,這個變數就相當於這個函式,可以通過括號語法來呼叫。

如果你還嫌不夠徹底,有人給了更**的解決方案:乙個叫做「周蟒」的專案,相當於把 python 翻譯成了中文。(不過專案很久沒更新了,我在 py3 上安裝未成功)

在 py2 上通過 pip 即可安裝:

pip install zhpy

複製**

之後就能通過zhpy進入互動環境,或者直接zhpy test.py執行你的中文 py **檔案。

寫出來**是醬嬸兒的:

random

匯入randint

作為隨機整數

定義是否相等

(引數1

,引數2

):如果

引數1<

引數2:

列印'太小了'返回假

如果引數1

>

引數2:

列印'太大了'返回假

如果引數1

==引數2:列印

'猜中了!'返回真

答案=隨機整數(1

,100)列印

'猜猜我想的是幾?'

是否猜中=假

當是否猜中==假

:猜測值=整數

(輸入())是否猜中

=是否相等

(猜測值,答案

)複製**

幾乎幫你把所有基礎語法都轉成了中文,甚至還可以用 emoji 表情……之前有同學對猜數字**的理解還有疑惑,尤其是 bingo 這個變數,那如果寫成這樣,是不是更容易理解一點呢?

除此之外,還有不少中文程式語言,其中最出名的莫過於「易語言」。雖然科班出身的程式設計師都不太看得上這種語言,但不得不承認,它在我國的草根黑客圈中有著廣泛的群眾基礎。

另外,我還發現了乙個有趣語言,叫perlyuyan。看名字就知道是基於 perl,但讓你想不到的是,它將 perl 翻譯成了文言文……比如官方示例裡的**:

用警兮用嚴。

印道一至一

哉兮印編曰雜申

雜申矣又纖曰龍鼠矣

又曰一矣

亂曰國無人莫我知兮

又何懷乎故都

既莫足與為美政兮

吾將從彭咸之所居

資曰印重一至一兮

重起一至十合始印終

複製**

看了這些中文寫出的**,你現在有啥想法?覺得太酷炫了,還是視作異端?

最後還是說句,儘管可以用中文寫**,儘管有大量的中文資料、教程、文件,就算你自己也接受使用中文來學習程式設計甚至寫**,我還是強烈建議你盡量提公升下英文,逼著自己去看報錯、看原版文件、看 stackoverflow 上的問答,哪怕一開始你用翻譯工具慢慢查。英語能力雖然對你程式設計起步的下限影響不大,但對你程式設計發展的上限至關重要。和學程式設計一樣,這是個長期的過程,堅持下去總會有提公升的。

之前我們還做過乙個整理程式設計英語高頻詞彙的小專案,有需要的可以拿去參考:《我們用程式整理出了乙份python英語高頻詞彙表,拿走不謝!》,希望對你有所幫助。

如何自學python | 新手引導 | 精選

python

python裡能不能用中文

現代計算機和程式設計的起源和推動力量主要源自美國,再加上26個字母很便於表示 算上大小寫,6位bit就夠了 因此英語一直是程式設計領域的不二之選。但這就給部分非英語國家的程式設計學習者帶來一些困擾。以至於有些人還沒開始學,就擔心自己的英語問題。這完全沒必要,因為程式設計初期所用到的單詞很有限,你就當...

python能不能用c開啟檔案

上一節我們學習了如何建立檔案並寫入資訊,那麼還需要學習怎麼在程式裡使用檔案中的內容,關於檔案的操作,下面 裡彙總了多種方式。方法說明 file.read number 這種方式用於讀取文字的指定字串長度 file.readline 這種方式讀取文字的第一行內容 flie.readlines 這種方式...

微商分銷功能不能用了

微商連遭重創 加碼內容製作 新微商時代,深挖內容成為微商們轉型的重要方向。背靠巨頭天虹商場,旗下天虹微品對取消 分銷並不擔憂。天虹微品總經理王亞非在接受北京商報記者採訪時表示,2014年上線的天虹微品去年發動員工開微店至今,已經吸引微店店主近30萬人,年增長率達130 150 銷售轉化率在10 以上...