03-第一個腳本程序以及輸入輸出_Python編程之路

上節課已經教大家安裝了Python的解釋器,那麼這節課我們就可以正式來寫代碼了

說明:在下面的代碼演示中,我將大部分使用python交互器演示代碼的輸入輸出,注意“>>>”後面代表的是輸入的代碼,沒有其他的標誌代表的是輸出

按照以往的慣例,首先我們還是寫一個Hello world 程序

# -*- coding :utf-8 -*-
#Author = susmote
print("hello world")


按照以上的程序,我們簡單做一個解釋


字符編碼


首先第一個要解釋的是python的編碼格式,python的解釋器在加載python的代碼時,默認會按照ASCII進行編碼


在我們的python程序中,我們免不了要對中文進行處理,但是我們知道ASCII是不支持中文的,所以我們就需要在python文件的首行加上編碼格式的申明。

對於中文的編碼,我們肯定要提到1980年的gb2312,當時最早的計算機中文編碼,只是當時gb2312支持的漢字只收錄了7445個字符,其中包括6763個漢字和682個其他符號

gb2312支持的漢字過少,所以在1995又出了新的漢字擴展規範GBK1.0,gbk1.0總共收錄了21886個符號,分爲漢字區和圖形符號區,漢字區包括21003個字符。在後面中文的字符編碼在不斷的更新換代,同時也支持了我國很多少數民族的文字,如維吾爾文、藏文,雖然現在的PC支持的中文編碼格式已經很全了,但對於嵌入式設備,如手機、MP3、MP4一般只支持GB2312。

顯然ASCII碼無法將世界上的各種文字和符號全部表示,所以,就需要新出一種可以代表所有字符和符號的編碼,即:Unicode

Unicode(統一碼、萬國碼、單一碼)是一種在計算機上使用的字符編碼。Unicode 是爲了解決傳統的字符編碼方案的侷限而產生的,它爲每種語言中的每個字符設定了統一併且唯一的二進制編碼,規定雖有的字符和符號最少由 16 位來表示(2個字節),即:2 **16 = 65536,
注:此處說的的是最少2個字節,可能更多

UTF-8,是對Unicode編碼的壓縮和優化,他不再使用最少使用2個字節,而是將所有的字符和符號進行分類:ascii碼中的內容用1個字節保存、歐洲的字符用2個字節保存,東亞的字符用3個字節保存..

如想了解更多關於字符編碼的請自行上網查閱

需要注意的是,python3默認支持的是utf-8,所以一般是不需要當心編碼的錯誤,但是爲了兼容更多平臺,還是建議在一些項目中加入申明編碼

註釋

然後再下面一行是一個註釋,說明代碼作者的名字,這個你們也可以養成這樣的習慣,申明自己的個人代碼

在python中有兩種註釋格式,分爲單行註釋和多行註釋

單行註釋:# 註釋的內容

# 這是當行註釋

多行註釋:''' 註釋的內容 '''

'''
這是多行註釋
特克斯官網www.susmote.com
'''

輸出與輸入

在輸出hello world我們使用 print 函數

在python2中使用 print 函數時和在python3中有很大不同

python2中在輸出時可以不加括號

>>> print "hello"
hello
>>> i = 2
>>> print i
2

但在python3中,強制要求加括號,不加括號解釋器就會報錯

>>> print("hello")
hello
>>> i = 1
>>> print(i)
1

除了輸出,python當然也有輸入的函數

在輸入方面,python2和python3也有一點不同

input函數裏面可以加入參數作爲一個提示符

python2中輸入數據,有raw_input() input() 兩個函數

  • raw_input()將所有輸入作爲字符串看待,返回字符串類型
  • input()只能接收數字的輸入,也能輸入一個表達式,他返回所輸入的數字的類型(int ,float)
>>> name = raw_input("請輸入你的名字:  ")
請輸入你的名字:  susmote
>>> type(name)
<type 'str'>

輸入字符串返回字符串

>>> age = raw_input("請輸入你的年齡:  ")
請輸入你的年齡:  18
>>> type(age)
<type 'str'>

輸入數值返回字符串

>>> result = raw_input("請輸入一個算數表達式:  ")
請輸入一個算數表達式:  2*50
>>> print result
2*50

輸入表達式後返回的是字符串

>>> age = input("請輸入你的年齡:  ")
請輸入你的年齡:  18
>>> type(age)
<type 'int'>

input只支持輸入數字

>>> result = input("請輸入一個算數表達式:  ")
請輸入一個算數表達式:  2*50
>>> print result
100
input能計算表達式

提示:type()函數可以返回數據的類型


python3中input()函數接收一個標準輸入數據,返回的是string類型,在python3中只有一個input,去除了raw_input.

>>> name = input("input your name")
input your namesusmote
>>> name = input("請輸入你的名字: ")
請輸入你的名字: susmote
>>> type(name)
<class 'str'>
>>> age = input("請輸入你的年齡: ")
請輸入你的年齡: 18
>>> type(age)
<class 'str'>
>>> result = input("請輸入一個表達式: ")
請輸入一個表達式: 2*50
>>> print(result)
2*50

當然python也提供了一個方法,可以方便隱藏輸入的密碼

我們只需要在使用前導入這個模塊

import getpass

然後使用getpass.getpass()方法

>>> passwd = getpass.getpass("請輸入你的密碼:  ")
請輸入你的密碼:
>>> print(passwd)
123456

默認在輸入時沒有顯示,這個有點像Linux的用戶密碼輸入


這一節我們通過一個hello world程序學習了python的編碼格式、如何在python代碼中註釋、以及python的輸入和輸出
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章