[size=large][color=blue]1、python2轉python3[/color][/size]
python2和python3語法互不相容!!!
還好python提供了工具!
要轉換乙個資料夾及其子資料夾中的檔案,只需要一句話:
cmd中輸入:
python pythong安裝目錄/scripts/2to3-script.py -w 要轉的資料夾名稱
#例如python e:/anaconda3/scripts/2to3-script.py -w assignment1py3
#其中assignment1py3為資料夾!
其中 -w 表示轉換完了寫回到原檔案,,所以執行前最好是複製乙個副本出來
如果要轉的檔案不是以.py結尾的,,則需要乙個個檔案去敲**,比如
python e:/anaconda3/scripts/2to3-script.py -w knn.ipynb
[size=large][color=blue]2、python入門資料[/color][/size]
cs231n的python介紹:[url]
numpy for matlab users:[url]
[size=large][color=blue]3、python檔案處理[/color][/size]
快取的大小可以在open時設定:
[url]
示例**如下:
def processfilelinebyline(filename,outfilename, linefunc, headlinefunc=none,encoding='utf-8'):
'''將filename中的每一行通過linefunc轉換後輸出到outfilename檔案中,
如果對首行有特殊的處理需求,可以設定headlinefunc
'''import codecs
f = codecs.open(filename, 'r', encoding);
fo = codecs.open(outfilename, 'w', encoding,buffering=1024*1024);
if(headlinefunc!=none):
fo.write(headlinefunc(f.readline()));
while true:
lines=f.readlines(2048);
if(not lines or len(lines)==0):
break;
for line in lines:
fo.write(linefunc(line));
f.close();
fo.close();
def changesplitchar2(filename,outfilename,encoding='utf-8',oldsplitchar='\t',newsplitchar=','):
def chchar(line):
return line.replace(oldsplitchar,newsplitchar);
processfilelinebyline(filename, outfilename, linefunc=chchar, encoding=encoding)
[size=large][color=blue]4、iterator & generator[/color][/size]
參見:[url]
generator 是 iterator 的簡化版(**量減少),本質完全相同。
generator以函式形式編寫,, **執行到 yield x 時輸出乙個x ,,相當於next(it);
注意: python3中採用 next(it) , 而非 it.next()的形式;
可以採用 list(it) 生成list
[size=large][color=blue]5、python 函式的default value是共享的[/color][/size]
[url]
[url]
[url]
[size=large][color=blue]6、列出所有變數[/color][/size]
參見[url]
[list]
[*]vars() 列出所有變數,為乙個dict, for varname, varvalue in vars().items()...
[*]dir() 列出所有變數名, 之後可以通過eval(variablename) 來獲取變數
[*]globals() 全域性變數
[*]locals() 區域性變數
[/list]
[size=large][color=blue]6、python2 的ascii』 codec can』t encode[/color][/size]
通過以下語句修改全域性設定,參見(內容很詳細):[url]
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
雖然那篇博文中不推薦這麼做,但我覺著這個方案沒什麼不好的,比較utf-8是相容ascii的,既然原本為ascii的編解碼器,那麼換為utf-8的編解碼器應該沒任何問題。
[size=large][color=blue]7、python命令列環境變數設定[/color][/size]
[list]
[*]pythonioencoding=utf-8 python ***.py #更改編碼
[*]export pythonpath=$pythonpath:newpath/subfolder #增加庫路徑
[/list]
Python基礎語法 數字
1.python使用兩個 代表乘方運算 2.空格不影響python計算表示式的方式。3.python將帶小數點的數字都稱為浮點數。即小數點可出現在數字的任何位置 4.在字串中使用整數時,需要顯式地指出你希望python將這個整數用作字串,可以呼叫str 他讓python將非字串值表示為字串 5.如果...
Java語法 陣列
含義 陣列是用來儲存一組相同型別資料的資料型別。陣列既可以儲存基本資料型別,也可以儲存引用資料型別。索引 建立完陣列後會自動生成索引,索引是從0開始到長度 1。陣列索引可以是除了long的所有整型。定義 資料型別 陣列名 資料型別 陣列名 靜態初始化 資料型別 陣列名 new 資料型別 資料型別 陣...
MySQL 基礎語法 資料型別
ddl 語句 資料定義語句,定義不同資料庫 資料表 列 索引等資料庫物件,常用關鍵字有create drop alter等 dml 語句 資料操作語句,用於新增 刪除 修改和查詢資料庫記錄,並檢查資料的完整性。常用關鍵字有 insert delete update select等 dcl 語句 資料...