一、linux環境執行python檔案
在linux下執行python指令碼,需要新增1或者2兩句話,用於尋找使用什麼程式來執行該指令碼:
1 寫法表示去環境變數中尋找python程式(推薦)
#!/usr/bin/env python這種用法是為了防止作業系統使用者沒有將python裝在預設的/usr/bin路徑裡。當系統看到這一行的時候,首先會到env設定裡查詢python的安裝路徑,再呼叫對應路徑下的直譯器程式完成操作。
2 表示去/usr/bin/python路徑下尋找,如果python並沒有安裝到這個路徑下,就會出問題。
執行方法:
1、./xx.py
2、進入到python安裝目錄,# xx.py
二、變數賦值
注意:我們並不是為標記a建立了乙個值,而是先建立乙個值以後,再用乙個標記去指向它。
a=10
b=aa=20
此時:b的值依然是10,並不是20;因為b指向的是記憶體中10的位置
三、python編碼問題
最近利用python抓取一些網上的資料,遇到了編碼的問題。非常頭痛,總結一下用到的解決方案。12
34import
chardet
f
=
open
(
'file'
,
'r'
)
fencoding
=
chardet.detect(f.read())
print
fencoding
fencoding輸出格式 ,只能判斷是否為某種編碼的概率。比較準確的結果了。輸入引數為str型別。
一般流程是str利用decode方法根據str的編碼將其解碼為unicode字串型別,然後利用encode根據特定的編碼將unicode字串型別轉換為特定的編碼。python中str和unicode屬於兩種不同的型別,如下。
系統編碼:預設寫原始碼的編輯器的編碼方式。它代表原始碼檔案內的所有內容都是根據此方式編碼成二進位製碼流。存入到磁碟中的。linux下通過locale命令檢視。
python編碼:指python語句內設定的解碼方式。如果不設定的話,python2預設的是ascii編碼方式,python3預設是utf-8編碼;如果python源**檔案中不出現中文的話,這個地方怎麼設定應該不會問題。
設定方法:在原始碼檔案開頭(一定是第一行):#-*-coding:utf-8-*-,原始碼檔案的設定解碼方式是utf-8 或者12
3import
sys
reload
(sys)
sys.setdefaultencoding(
'utf-8'
)
檔案編碼:文字的編碼方式,linux下vim利用set fileencoding檢視。
比如print s, s型別為str,linux系統下系統預設編碼為utf8編碼,s在輸出前就應該編碼為utf8。如果s為gbk編碼就應該這樣輸出。print s.decode('gbk').encode('utf8')才能輸出中文。
window下面情況相同,window預設編碼為gbk編碼,所以s輸出前必須編碼為gbk。
Python 基礎知識
來自 一 識別符號 1.python 中的識別符號是區分大小寫的。2.標示符以字母或下劃線開頭,可包括字母,下劃線和數字。3.以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from import 而匯入 以雙下劃線開頭的...
python基礎知識
一.隨機數的生成 都需要 import random 1.用於生成乙個指定範圍內的隨機浮點數。print random.uniform 10,20 print random.uniform 20,10 2.生成乙個指定範圍內的整數。下限必須小於上限制 print random.randint 12,...
python基礎知識
py基礎學習 1.命令列輸入python命令式,例如python test.py c m install sys.argv test.py c m install 2.切片,str 0 5 1 含頭不含尾,表示倒序切 3.unicode和encode unicode str,utf 8 將utf 8...