1、在python2.6總nonlocal不可用2、python中還是可以出現";"的,例如:x = 3 ; y = 5 ; print(x+y)
3、python中的集中賦值:
spam = 'spam' #簡單賦值
spam,ham = 'yun','ynn' #元祖賦值運算
['spam','ham'] = ['yun','yum'] #列表賦值運算
a,b,c,d = 'spam' #序列賦值運算
a,*b = 'spam' # 擴充套件序列解包
spam=ham='lunch' #多目標賦值
spam += 412 #增強賦值運算
3、序列賦值,
[a,b,c]=(1,2,3)
(a,b,c)="abc"
[a,b,c]='abc'
但是當兩側數目不一致時會報錯。
4、當兩側數目不一致時,序列解包可以解決這個問題
seq = [1,2,3,4]
a,*b = seq
print(a,b) #輸出:1,[2,3,4]
*a,b = seq
print(a,b) #輸出:[1,2,3],4
a,*b,c = seq
print(a,b,c) #輸出:1,[2,3],4
序列解包對任何序列都有效:
a,*b = 'spam' #輸出:s,pam
如果沒有剩下的內容給帶星號的名稱,則會賦值乙個空的列表
a,b,c,d,*e = seq #輸出:1,2,3,4,
a,b,*c,d,e = seq #輸出1,2,,3,4
#a,*b,c,*d=seq將會報錯
#*a = seq 將會報錯
*a, = seq
5、案例分析
a = b = 0
b = b+1
print(a,b) #0,1
#修改b只對b有影響,
6、列表的+和增強運算+=是有區別的,其中呼叫列表的extend的方法和增強+=效果一樣。+=是在原處修改,而+是新建乙個新的列表
l = [1,2,3,4]
t = [[1,2,3,4,5,6,7]]
k = l+t
print(k) #輸出[1,2,3,4,[1,2,3,4,5,6,7]]
t[0][0] = -100
print(k) #輸出[1,2,3,4,[1,2,3,4,5,6,7]]
l = [1,2,3,4]
t = [[1,2,3,4,5,6,7]]
l+=t
print(l) #輸出:[1, 2, 3, 4,[ 1, 2, 3, 4, 5, 6, 7]]
t[0][0]=-100
print(l) #輸出:[1, 2, 3, 4, [-100, 2, 3, 4, 5, 6, 7]]
l = [1,2,3,4]
t = [[1,2,3,4,5,6,7]]
l.extend(t)
print(l) #輸出:[1, 2, 3, 4,[ 1, 2, 3, 4, 5, 6, 7]]
t[0][0]=-100
print(l) #輸出:[1, 2, 3, 4, [-100, 2, 3, 4, 5, 6, 7]]
另外乙個例子:
l = [1,2]
m = l
l = l + [3,4]
print(l,m) #輸出:[1,2,3,4],[1,2]
l = [1,2]
m = l
l.extend([3,4]) #或者l+=[3,4]
print(l,m) #輸出:[1,2,3,4][1,2,3,4]
7、命名規則
單下劃線開頭不會被from module import * 匯入 例如:_x
前後都有雙下劃線的是系統定義變數 例如:__doc__
前面有兩個下劃線,但是後面沒有下劃線的是類本地變數
8、python3.0中的語法
print([object][,sep=' '][,end='\n'][,file=sys.stdout]) #等號後面都是預設值
9、python2.6中
print x,y 等效於 print(x,y)
print x,y, 等效於print(x,y,end='' #表示消除末尾的換行符
print >>myfile x,y 等效於 print(x,y,file=myfile)
如果想消除各個元素間的分隔符可以通過+或者格式化表示
print x+y 或者 '%s%s'%(x,y)
10、print(x)等價於 如下
import sys
sys.stdout.write(str(x)+'\n')
11、可以設定sys.stdout為檔案,例如:
import sys
temp = sys.stdout #儲存下來,方便以後調換過來
sys.stdout = open(r'f:/python/tsst.txt') #或者 print(x,y,file=(open(r'f:/python/test.txt')))
print('hello,worl')
print(1,2,3)
sys.stdout.close()
sys.stdout = temp #又切換為原來
print('hello,worl')
print(1,2,3)
12、錯誤資訊也可以重定向
import sys
sys.stderr.write('bad'*8+'\n')
或者print('bad'*8,file=sys.stderr)
Python中return和print的作用及區別
print的作用是輸出資料到控制端,就是列印在你能看到的介面上 print的作用還是比較容易理解的 print 1 print asdfghj 輸出結果 1asdfghjreturn的作用之一是返回計算的值 沒有return語句 x 1y 2def add x,y z x y print add x...
對python中return和print的一些理解
前言 最近剛開始學程式設計客棧習python,之前只有一些c的基礎,也忘得差不多了,現在想邊學習邊總結quwmqw和分享收穫 看書時看了return的用法,可是後來和print混了,老是感覺可以將函式return值直接顯示,但不是這樣的。下面就來和大家分析下對python中return和print的...
Python中print換行問題
print 如何實現換行?1 將語句分別輸入在不同行中,也就是多輸入幾個print語句。coding utf 8 print 今天天氣很好 print 我們出去玩吧 print 你說好嗎 輸出的結果 今天天氣很好 我們出去玩吧 你說好嗎 2 我們在學習c語言的時候,經常用 n換行,在python中同...