1、目錄html
1.Python介紹java
python的創始人爲吉多·範羅蘇姆(Guido van Rossum),目前已是使用頻度特別高的開發語言。python
主要應用領域:linux
學完咱們能夠乾點啥呢?c++
2.Python發展史sql
略數據庫
3.Python 2 or 3?編程
2和3雖然有點區別,但隨着時間的推移確定是3越用越多,因此要好好的學習3vim
4.Python的安裝windows
windows直接下載程序進行安裝,Linux和蘋果都默認基礎了python 2.6,若是須要新版本則需下載安裝
①下載:https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
②解壓後進入目錄編譯安裝: #./configure --prefix=/usr/python && make && make install
注:我全部的練習筆記均在Pycharm 5.0.3中完成,python版本爲3.6
5.寫第一個Hello World程序
6.變量/字符編碼
a.變量便可變的量,python中變量的定義規則:
b.字符編碼簡史:
美國:1963年 ASCII (包含127個字符 佔1個字節)
中國:1980年 GB2312 (收錄7445個漢字,包括6763個漢字和682個其它符號)
1993年 GB13000 (收錄20902個漢字)
1995年 GBK1.0 (收錄 21003個漢字)
2000年 GB18030 (收錄70244個漢字)
世界:1991年 unicode(‘萬國碼’也就統一編碼,一般佔2字節,複雜的漢字佔4字節)
UTF-8 (可變長的字符編碼)
Python2中的字符串進行字符編碼轉換過程是:
字節串-->decode('原來的字符編碼')-->Unicode字符串-->encode('新的字符編碼')-->字節串
Python3中定義的字符串默認就是unicode,所以不須要先解碼,能夠直接編碼成新的字符編碼:
字符串-->encode('新的字符編碼')-->字節串
7.用戶輸入
即交互式的提醒要求用戶輸入一些信息,而後打印相應的結果
8.模塊
Python的強大之處在於他有很是豐富和強大的標準庫和第三方庫,幾乎你想實現的任何功能都有相應的Python庫支持
9.pyc是什麼
咱們說pyc文件實際上是PyCodeObject的一種持久化保存方式
10.數據類型初識
11.數據運算
瞭解詳細:猛擊這裏
12.表達式if ...else語句
13.表達式for和wile循環
14.break and cotinue
2、練習
1.略 2.略 3.略 4.略
5.寫咱們的第一個hello world程序
linux中是:a.新建一個hello_world.py的文件
b.編輯文件#vim hello_world.py (文件頭增長‘#!/usr/bin/env python’指定解釋器,在增長一行'pring 'hello world')
b.給文件增長可執行權限#chmod a+x hello_world.py便可經過#python hello_world.py執行
注,我全部的練習都是在Pycharm中完成的。
#pycharm 5.0.3(python3.6) print('hello world!')
hello world!
Process finished with exit code 0
6.變量
#pycharm 5.0.3(python3.6) names ='Felix'#變量的聲明定義賦值 print('打印變量結果名字:',names)
打印變量結果 Felix
Process finished with exit code 0
字符編碼
#!/usr/bin/env python # -*- coding:utf-8 -*- #pycharm 5.0.3(python2.6) #字節串-->decode('原來的字符編碼')-->Unicode字符串-->encode('新的字符編碼')-->字節串 utf_8_a = '測試' print(utf_8_a,type(utf_8_a),len(utf_8_a)) #打印utf_8_a的內容、類型及長度 unicode_a = utf_8_a.decode('utf-8') #對utf_8_a進行解碼成unicode print(unicode_a,type(unicode_a),len(unicode_a)) gbk_a = utf_8_a.decode('utf-8').encode('gbk') #先解碼在編碼成gbk print(gbk_a,type(gbk_a),len(gbk_a)) #打印gbk_a的內存、類型及長度 print(gbk_a.decode('gbk'))
('\xe6\xb5\x8b\xe8\xaf\x95', <type 'str'>, 6) (u'\u6d4b\u8bd5', <type 'unicode'>, 2) ('\xb2\xe2\xca\xd4', <type 'str'>, 4) 測試 Process finished with exit code 0
#pycharm 5.0.3(python3.6) #Python3中定義的字符串默認就是unicode,所以不須要先解碼,能夠直接編碼成新的字符編碼: #字符串-->encode('新的字符編碼')-->字節串 utf_8_a = '測試' print(utf_8_a,type(utf_8_a),len(utf_8_a)) #打印utf_8_a的內容、類型及長度 gbk_a = utf_8_a.encode('gbk') print(gbk_a.decode('gbk'),type(gbk_a),len(gbk_a))
測試 <class 'str'> 2 測試 <class 'bytes'> 4 Process finished with exit code 0
7.用戶輸入
#pycharm 5.0.3(python3.6) name = input('Please input your name:') #若是想讓輸入的密碼不可見可使用 import getpass模塊 import getpass #一般調用模塊都寫在最上邊 pwd = input('Your passwd:') print('Hello,'+name) #字符串的鏈接能夠用「+」(加號) print('你的密碼是:',pwd)
Please input your name:Felix Your passwd:123 Hello,Felix 你的密碼是: 123 Process finished with exit code 0
8.模塊
import sys print(sys.path) #打印環境變量 print(sys.argv) #實際上打印的是相對路徑,因爲pycharm中有名稱,因此直接打印的是絕對路徑 import os #print(os.path) #cmd_res = os.system("dir") #執行命令,不保存結果 cmd_res = os.popen("dir").read() #不加read,只是存儲到了內存中,須要用read讀取 print("-->",cmd_res) #os.mkdir("new_dir") #建立目錄 #import login #找模塊先去當前目錄下找,若是沒有則出錯,解決,同目錄解決,或者修改環境變量
9.略
10.數據類型
略
11.數據運算
略
12.if ...else
#pycharm 5.0.3(python3.6) #要求:提示用戶輸入用戶名密碼 #實現:用戶輸入用戶名密碼後進行驗證(name = 'Felix',pwd = '123') # 若是錯誤,則輸出用戶名和密碼 # 若是成功,則輸出 歡迎,XXX! import getpass #若是想讓輸入的密碼不可見可使用 import getpass模塊 name = input('Please input your name:') pwd = int(input('Please input your pwd:')) # pwd = int(getpass.getpass('Please input your pwd:')) #能夠隱藏密碼提示,這裏測試又問題,輸入完密碼沒有結束 if name == 'Felix' and pwd ==123: print('Welcome ',name) else: print('Your name or pwd error')
Please input your name:Felix Please input your pwd:123 Welcome Felix Process finished with exit code 0
#pycharm 5.0.3(python3.6) #要求:在程序裏設定好你的年齡,而後啓動程序讓用戶猜想, #實現:用戶輸入後,根據他的輸入提示用戶輸入的是否正確,若是錯誤,提示是猜大了仍是小了 age_of_oldboy = 56 guess_age = input("guess age:") if guess_age == age_of_oldboy: print("Yes,you got it.") elif int(guess_age) > age_of_oldboy: print("think smaller") else: print("think bigger") #以上版本只能一次輸入一個年齡就須要在此運行程序
guess age:28
think bigger
Process finished with exit code 0
結合條件利用循環實現讓用戶不斷的猜年齡,但只給最多3次機會,再猜不對就退出程序:
#pycharm 5.0.3(python3.6) #while循環方式 age_of_oldboy = 56 count = 0 while count <3: guess_age = int(input("guess age:")) if guess_age == age_of_oldboy: print("Yes,you got it.") break elif guess_age > age_of_oldboy: print("think smaller") else: print("think bigger") count +=1 else: print("You have tried too many times..fuck off")
guess age:20 think bigger guess age:12 think bigger guess age:30 think bigger You have tried too many times..fuck off Process finished with exit code 0
#pycharm 5.0.3(python3.6) #for循環方式 age_of_oldboy = 56 count = 0 for i in range(3) : guess_age = int(input("guess age:")) if guess_age == age_of_oldboy: print("Yes,you got it.") break elif guess_age > age_of_oldboy: print("think smaller") else: print("think bigger") else: print("You have tried too many times..fuck off")
guess age:30 think bigger guess age:56 Yes,you got it. Process finished with exit code 0
13.循環
for loop
#pycharm 5.0.3(python3.6) #循環打印1到9 for i in range(10): print(i)
0 1 2 3 4 5 6 7 8 9 Process finished with exit code 0
#pycharm 5.0.3(python3.6) #需求一,循環打印1到9,可是遇到小於5的循環次數就不走了,直接跳入下一個循環 #此處就利用到了continue for i in range(10): if i<5: continue #不往下走了,直接進入下一次循環 print(i)
5
6
7
8
9
Process finished with exit code 0
#pycharm 5.0.3(python3.6) #需求二:仍是上面的程序,可是遇到大於5的循環次數就不走了,直接退出 for i in range(10): if i >5: break #不往下走了,直接跳出整個循環 print(i)
0 1 2 3 4 5 Process finished with exit code 0
while loop
#pycharm 5.0.3(python3.6) #死循環 count = 0 while True: print('等着吧……') count +=1
#pycharm 5.0.3(python3.6) #死循環 count = 0 while True: print('等着吧……') count +=1 if count == 5: print('中斷循環') break
14.中斷,已在13循環中練習
3、參考
http://www.cnblogs.com/alex3714/articles/5717620.html <博主博客記錄>
http://www.runoob.com/
注:本筆記基於「老男孩python14期百度傳課視頻」,地址:https://chuanke.baidu.com/v3628575-182242-1134376.html