python的賦值機制一般為淺拷貝,eg:test0 = test1該賦值結構中兩個變數中的id值相同,改變test1值test0會跟隨改變
test0 = 1
test1 = test0
test2 = 1
# id(test1)=id(test2)=id(test0)
以上的test0和test1的id同樣相同,這和python內部賦值機制有關。python分配了乙個 pyint 大小的記憶體 pos1 用來儲存物件 1 ,然後,python在命名空間中讓變數 test0和test1指向了這一塊記憶體,注意,整數是不可變型別,所以這塊記憶體的內容是不可變的。為了提高記憶體利用效率,對於一些簡單的物件,如一些數值較小的int物件,python採用了重用物件記憶體的辦法,因此id(test2)=id(test0)
判斷兩個變數是否同乙個id:test0 is test1
列印變數id:id(test0)
python是通過縮排控制
判斷結構
if test>200:
print('200')
elif test<150:
print('小於150')
else:
print('else')
while迴圈
test = [1,'hello',2,3]
test1=test
while test:
print(test.pop())
test1
for迴圈結構:
test = [10,11,12,13,14,15]
for i in test:
if i%2==0:
print(i)
else:
continue
def add_number(a,*args):
b=0for i in args:
a+=i
return a,b;
a,b = add_number(1,2,3,4)
import math
for i in range(10):
try:
input_number = input('write a number :')
if input_number == 'q':
break
result = 1/math.log(float(input_number))
print(result)
except valueerror:
print('valueerror: input must >0')
except zerodivisionerror:
print('log(value) must != 0')
except exception:
print('unknow error')
# 遇到錯誤和執行完畢自動關閉
with open('./data/test4.txt','w') as f:
f.write('auto deal with')
class people:
'幫助資訊:***x'
#所有例項都會共享
number = 100
#建構函式,當建乙個類時首先呼叫
def __init__(self,name,age):
self.name = name
self.age = age
def display(self):
print ('number = ',people.number)
def display_name(self):
print(self.name)
import time
since = time.time() # 單位為妙
time.sleep(5)
time_elapsed = time.time() - since
print('the code runs'.format(time_elapsed))
print (time.strftime('%y-%m-%d %h:%m:%s',time.localtime()))
Python基礎總結
如果字串裡面有很多字元都需要轉義,就需要加很多 為了簡化,python還允許用r 表示 內部的字串預設不轉義,可以自己試試 print t print r t t 我們可以比較容易的將字典 dict 型別轉為字串 string 型別。通過遍歷dict中的所有元素就可以實現字典到字串的轉換 for k...
Python基礎總結
輸入 模組 執行指令碼 在指令碼的第一行表明直譯器的位置即可在linux中不必顯示的呼叫python直譯器而執行指令碼 注釋字串 字串拼接 str repr和長字串 通用的序列操作 切片str hello print str 2 4 切片的引數 序列相加 乘法 成員資格 長度 最大值 最小值 列表 ...
Python基礎總結
python2.x 與 python3.x 的區別 推薦學習 注釋 這是注釋 tab 設定為四個空格 輸入和輸出 轉義字元 n 換行,t 製表符,print what s this 結果 可以使用 r 預設內部字串不轉義 print n print r n 換行 除了 n 還可以使用 表示多行 pr...