python整理筆記2(初學者需注意--自己曾遇到的問題)
下載安裝地址:www.python.org/download,選擇並安裝python的最新版本
1、python2.7和python3.0以上版本是有區別的
區別一:python2.7版本有raw_input()和input(),3.0以上版本將兩者合併,只有input。
python2.7:對於raw_input(),接受任何型別的輸入,對於input(),希望讀取一個合法的python表示式,即使輸入字串必須用引號括起來,否則會引發一個syntaxError;raw_input()將 所有的輸入作為字串,而input()在對待純數字輸入有自己的特性,返回輸入的數字型別(int ,float) eg:input(1+3)
結果:4
python3.4:raw_input()和input()整合,只有input(),若以raw_input()輸入會出錯,且輸出結果均作為字串處理,若要用作整形,可以強制型別轉換 eg:
如上:若不強制轉換,在進行與整形數運算時會出錯。
區別2:print 輸出
python2.7:print "hello"
python3.4: 若寫成print "hello" 將出現“SyntaxError: invalid syntax”錯誤,3.0以上print為一函式,應該寫成print("hello")
區別3:除法
python2.7:若兩個普通的整型或長整型(缺少小數)相除,餘數被捨棄,只有當至少有一個運算元是浮點數時才顯示浮點型結果,
python3.4: 以上問題已經被解決了,目前的python將顯示小數,除非告訴它不要這麼做。 eg:324/101,結果:3.2079207920792081(3.0版本以上的結果被轉換成一個浮點數)
2、換行字元及取消換行
3、定義一個字串
eg:a="abc",
含義:建立一個”abc"字串;在記憶體中建立一個名為a的變數指向abc;
4、寫多行程式
python shell發現程式沒法換行,一換行就認為是執行了,這是因為使用的是python shell,點選File->New window或者ctr+N新開一個python編輯器,著才是程式碼編輯器,儲存為.py的檔案,然後Run->Run
Module或F5就可以在python shell顯示結果了。
5、True和False
注意:True,而非true;比較相等、不相等、大小,(可以是列表或字典)
6、and,or,not
Python使用and、or和not來表示與、或、非
eg:True and False,結果:False
True or False,結果:True
eg:not 5,結果:False
not True 結果:False
not可用於任何得出True或False結果的測試中
7、python的資料結構
字串,整型,浮點型,虛數及元祖,列表,字典
虛數:建立:輸入 12j,結果:12j;輸入 12j+1,結果:(12j+1);
元祖:建立:Tuple=('hello','wei'):類似陣列 圓括號
列表:建立:List=['hello','wei'] 方括號
字典:建立:a={'breakfast':'eggs ' , 'lunch':'bread' } 大括號
:'breakfast'和 'lunch'為鍵值,'eggs ' 和'bread'為值
列表方法:
1. list,append(x) 在列表尾部新增一項
2. list.extend(x) 用給定的列表將當前列表接長
3.list.insert(i,x) 在給定的位置上插入
4.list.remove(x) 移除列表中第一個值為x的項,x並非索引
5.list.pop(i) 刪除指定位置的項
6.list.index(x) 返回列表中第一個值為x項的索引,無匹配則產生一個錯誤
7.list.count(x) 返回列表中x出現的次數
8.lise,sort() 排序
9.list.reserve() 倒序
eg:List=['hello','wei']List.append('how','are','you') 結果:'hello','wei','how','are','you'
List.extend('how') 結果:’hello','wei','h','o' ,'w' 與append相比extend將字元分開分別加入末尾
List.insert(1,'how') 結果:’hello','how','wei' 下標從0開始
可以使用help檢視各方法的使用 eg:help(list.pop)
資料結構總結:元祖是不可修改的資料序列,列表可修改,字典可通過keys方法返回所有鍵值,values返回所有值