Python 學習筆記(第一周)

2021-08-09 17:42:13 字數 4957 閱讀 1694

#!/usr/bin/env python

或者#!/usr/bin/python

print("hello world!")

python 是解釋型語言,執行時需要讓系統了解是用哪種直譯器哪種格式解析檔案,所以要加#!/usr/bin/python

這兩種寫法都行,但是推薦第一種,優點是可以全域性搜尋python環境變數,防止python安裝在其他目錄使用道其他版本python。

python name = "hello world!"

shell name="hello world!"

c++ string name = "hello world!"

python 定義變數無需定義資料型別

變數定義規則:

數字/字母/下劃線 任意組合

數字不能開頭

不能包含關鍵字

約定規則:

下劃線隔開單詞或者駝峰

顯示告訴python直譯器用什麼編碼來執行**。

python3預設支援unicode編碼,所以預設支援中文,字元兩個位元組表示。但是python2沒有預設支援unicode,所以沒有預設支援中文,需要先解碼,需要新增字符集。

如果在檔案開頭加上如下語句,可以把檔案轉成utf-8編碼。

# -- coding: utf-8 --

存乙個英文本元1個位元組ascii

存乙個漢子字元2個位元組 unicode

unicode相容gbk2312和utf-8,但是gbk2312和 utf-8互不相容,不能直接互轉,需要把unicode當媒介,從gbk2312轉uniclde再從unicode轉gbk2312

input() ——python3

raw_input()—-python2

兩個函式功能完全一樣。

格式化輸出:

print(」 %s %d %f 」 % (var1,var2,var3))

—%s: string

—%d: integer

—%f:float

python是強型別語言,型別轉換方法:型別(var)

如:int(var)

列印資料型別 print(type(var))

while迴圈

while true:

pass

else:

pass

for迴圈

for i in range(x):

pass

import sys

print(sys.path)

[『/home/justin18chan/pycharmprojects/untitled/sys.py』] 1 2 3

『/usr/lib/python35.zip』, 『/usr/lib/python3.5』, 『/usr/lib/python3.5/plat-x86_64-linux-gnu』, 『/usr/lib/python3.5/lib-dynload』, 『/usr/local/lib/python3.5/dist-packages』, 『/usr/lib/python3/dist-packages』

or

print(sys.argv,1,2,3) #列印當前檔案帶引數絕對路徑

/usr/bin/python3.5 /home/justin18chan/pycharmprojects/untitled/sys.py

python相關環境變數,import匯入相關庫時,會到這些目錄當前路徑去尋找,然後去全域性變數路徑尋找。

其中,一般python標準庫放在/usr/lib/pythonx.x/目錄下,

建立檔名不能與已有模組名重名,匯入模組時,會首先到當前路徑尋找模組,儲存檔名如果與要匯入模組名一樣,會尋找當前檔案,導致錯誤。

1. sys模組

2. os模組

import os

cmd_res = os.system("du -h") # 呼叫系統命令,不儲存結果

print(cmd_res)

4.0

k ./.idea/inspectionprofiles

36k ./.idea

44k .

0 #返回值是0,原因是呼叫os.system(),輸出直接列印到螢幕,返回值並不是內容而是返回直接成功與否的結果。

cmd_res = os.popen("du -h")# 呼叫系統命令popen,可以儲存資料

print(cmd_res)

0x7ff4f88abeb8> #返回資料儲存物件位址

cmd_res = os.popen("du -h").read()# 返回物件呼叫read()函式取資料

print(cmd_res) #列印儲存資料

4.0k ./.idea/inspectionprofiles

36k ./.idea

44k .

三元運算

x = a

ifa>b else b

格式可以這樣看x = a if (a > b) else b

如果 a> b 則 x = a

如果 a

>>>'€20'.encode('utf-8')

b'\xe2\x82\xac20'

>>>

b'\xe2\x82\xac20'.decode('utf-8')

'€20'

注意可以使用encode(編碼型別)和decode(解碼型別)進行編譯碼,預設使用utf-8。

基本操作:

索引

切片追加

刪除長度

切片迴圈

包含

列表與切片

names = ["zhangyang","guyun","xiangpeng"]

#注意:使用列表list儲存字串,需要用引號包含起來。

print(names)

print(names[0])

print(names[1:3])

#注意:列表切片,索引原則顧頭不顧尾

print(names[-1])

#注意:-號表示從後開始數,-1即表示最後乙個數

print(names[-1:-3])

print(names[-3:-1])

#注意:上面兩個的輸出不同,列表取值是從左邊往右邊取,所以從-3到-1

print(names[-3:])

#注意:如果要取到最後乙個數,直接使用:表示就可以。`這裡寫**片`

['zhangyang', 'guyun', 'xiangpeng']

zhangyang

['guyun', 'xiangpeng']

xiangpeng

['zhangyang', 'guyun']

['zhangyang', 'guyun', 'xiangpeng']

print("插入方法演示")

print(names)

print(names)

names.insert(1,"xiedi")

print(names)

#注意:插入使用insert(index,"插入內容")

print("刪除方法演示")

print(names)

names.remove("chenzhonghua")

print(names)

#注意:刪除方法1 remove("刪除內容「)

del names[1]

print(names)

#注意:刪除方法2 del var[index]

names.pop(1)

print(names)

#注意:刪除方法3 pop(index) 彈棧方式,不加引數預設彈出最後乙個

插入方法演示

['zhangyang', 'guyun', 'xiangpeng']

['zhangyang', 'guyun', 'xiangpeng', 'chenzhonghua']

['zhangyang', 'xiedi', 'guyun', 'xiangpeng', 'chenzhonghua']

刪除方法演示

['zhangyang', 'xiedi', 'guyun', 'xiangpeng', 'chenzhonghua']

['zhangyang', 'xiedi', 'guyun', 'xiangpeng']

['zhangyang', 'guyun', 'xiangpeng']

['zhangyang', 'xiangpeng']

names1=[["bbabi","mesi"],"zhangyang","guyun","xiangpeng"]

names2=["chenzhonghua"]

names1.extend(names2)

#注意:歸併兩個變數,names2不會被刪除。

names3=names1.copy()

#注意:這裡的copy是淺拷貝,只拷貝第一層。

names1[1]="張陽"

names1[0][1]="cluo"

print(names3)

print(names1)

[['bbabi', 'cluo'], 'zhangyang', 'guyun', 'xiangpeng', 'chenzhonghua']

[['bbabi', 'cluo'], '張陽', 'guyun', 'xiangpeng', 'chenzhonghua']

python第一周心得 Python第一周總結

變數 不能為系統自帶的內建函式,如def,help,sum等等 變數不能已下劃線數字來開頭,對大小寫敏感 變數後直接接數字,則被賦值為整型,如何加引號則賦值型別為字串str型別 a 1 整型 int b 2 字串 str 用print 直接輸出 a hello print a 在 使用者想要同時輸出...

第一周學習

msg dic for k,v in msg dic.items print f 商品名稱 商品 end while true shoppingcar input 請輸入你要購買的商品 strip if shoppingcar not in msg dic or shoppingcar is non...

第一周學習

1.根目錄,位於目錄的最頂端,是所有檔案和目錄的父目錄,其自身沒有父目錄。2.boot 引導檔案存放目錄,核心檔案 vmlinuz 引導載入器 bootloader,grub 都存放於此目錄。3.bin 存放使用者基本命令,不能關聯至獨立分割槽,os啟動就會用到的程式。4.sbin 存放管理類基本命...