[Python筆記]第一篇:基礎知識

本篇主要內容有:什麼是python、如何安裝python、py解釋器解釋過程、字符集轉換知識、傳參、流程控制python

 

初識Python

1、什麼是Python程序員

Python是一種面向對象、解釋型計算機程序設計語言,由Guido van Rossum於1989年發明,第一個公開發行版發行於1991年。
 

爲何要使用Python小程序

優勢:python3.x

  • 學習成本低
  • 開發效率高–擁有豐富並且強大的第三方庫
  • 高級語言–不用關心底層運做細節
  • 可擴展性–Python是一門膠水語言,能於其餘語言如C ,C#進行擴展

 

缺點:多線程

  • 執行速度慢
  • 代碼不可以加密socket

  • 多線程問題

3、安裝Python編輯器

Ubuntu14.04自帶Python2.7python3.x,Windows則須要去官方網站下載exe安裝文件學習

 

4、第一個Python程序網站

運行第一個「Hello World」程序,咱們須要作的是在編輯器寫好如下代碼,而後保存爲hello.py。ui

在Linux的終端中輸入 python  文件保存路徑+hello.py運行程序;Windows請在cmd窗口運行。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
print 'hello world!'
print 'bye-bye world!' 

 

 

Python基礎

 
解釋器
前面的第一個Python程序中"#!/usr/bin/env python"爲在程序文件頭上聲明須要調用的解釋器,這樣作的目的是讓python程序能在類unix系統上正確執行。
 
執行過程
 
Python程序的執行過程是:
加載內存–>詞法分析–>語法分析–>放入編譯–>生成機器碼–>執行機器碼文本編碼
 
3、字符集問題
前面的第一個Python程序中 "# -*- coding: utf-8 -*-" 爲程序文本編碼的聲明,其做用是告訴解釋器此程序的文本以UTF-8格式顯示字符。

ASCII碼編碼方式表示字符數有限,表示諸如漢字等其餘語系文字必須使用unicode,但unicode會有存儲浪費的問題,因此採用改進型的UTF-8編碼方式以節省磁盤空間:)

幾個字符集轉換過程如圖所示:

python2編解碼小程序,

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#temp爲utf-8格式代碼,須要先decode成unicode而後再encode爲gbk格式

temp = "張三" # utf-8

temp_unicode = temp.decode('utf-8')
temp_gbk =  temp_unicode.encode('gbk')
print(temp_gbk)

Python 3.x默認採用UTF-8方式進行編碼

 

python3 socket默認以bytes方式傳送

因此:

 

s = "李露"
new_bytes_utf = bytes(s, encoding="utf-8")
print(new_bytes_utf)

new_bytes_gbk = bytes(s, encoding="gbk")
print(new_bytes_gbk)


# 還原成字符串
new_str = str(new_bytes_utf, encoding="utf-8")
print(new_str)


# utf8編碼一個字符三個字節
b'\xe6\x9d\x8e\xe9\x9c\xb2'
# gbk編碼一個字符兩個字節
b'\xc0\xee\xc2\xb6'
# 李露

 

4、註釋符

 

給Python代碼加註釋很是簡單,對於單行註釋使用" # ",對於多行註釋則使用"""進行註釋。

 

5、如何傳入參數


Python有大量的模塊,從而使得開發Python程序很是簡潔。類庫有包括三中:

  1. Python內部提供的模塊
  2. 業內開源的模塊
  3. 程序員本身開發的模塊

Python內部提供一個 sys 的模塊,其中的 sys.argv 用來捕獲執行執行python腳本時傳入的參數

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
sys.argv

 

變量名命名規則

 

1.字母,數字,下劃線

2.第一個字母不是數字

3.避開Python關鍵字:

 

Python常見關鍵字:

['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del',
'elif', 'else', 'except', 'exec','finally', 'for', 'from', 'global',
'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print',
'raise','return', 'try', 'while', 'with', 'yield']

 

7、條件判斷

 

1.if else語句

 python條件語句是經過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#輸入用戶名和密碼
#若是輸入用戶名和密碼與系統內記錄相符合則登陸成功
#不然失敗
import getpass user = 'alex' pw = '0000' input_user = raw_input("Login:") input_pw = getpass.getpass("Password:") if input_user == user and input_pw == pw : print "Welcome %s" %user else: print "Fail,check your name or password"

 

2.if elif語句

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#根據用戶輸入的名字打印名字相應的權限
#eric 普通
#tony 超級
#alex 超神
name = raw_input('please input name: ') if name == 'eric': print 'simple' elif name == 'tony': print 'super' elif name == 'alex': print 'god' else: print 'ur not user on this system,bye-bye!'

 

8、循環

 

1.while循環

while 語句用於循環執行程序,判斷條件能夠是任何表達式,任何非零、或非空(null)的值均爲true。

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#打印1到4的數字
#起始值爲1
#當數字到5則break結束程序
count = 1 while True: if count == 5: break print(count) count += 1

 

 

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#從1開始打印數字
#打印到3時放棄打印
#打印到10退出程序不打印

count = 1
while True:
    if count == 10:
        break
    if count == 3:
        count += 1
        continue
    print(count)
    count += 1

 

2.for循環

for循環能夠用來遍歷任何序列的項目,好比一個列表或者一個字符串。

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#遍歷一個字典
dic = {"k1":123,"k2":456}
for k in dic:
    print(k,dic[k])

 

 

3.continue,break,pass

continue,break 是用來跳過循環的,continue 用於跳過本次循環,break 則是用於完全退出循環;
若是您使用嵌套循環,break語句將中止執行最深層的循環,並開始執行下一行代碼。

pass是空語句,在判斷條件下面加上pass的意思是什麼也不執行。保證程序語法完整而且讓程序能正常運行。

相關文章
相關標籤/搜索