1. 程式人生 > 其它 >linux + python的第三天

linux + python的第三天

1、變數賦值
#shell變數賦值及組合變數
[tanuki@localhost ~]$ a=1
[tanuki@localhost ~]$ b=2
[tanuki@localhost ~]$ echo "$a$b" > shell.txt
[tanuki@localhost ~]$ cat shell.txt 
12
#python變數賦值及組合變數
In [1]: a = 1
In [2]: b = 2
In [3]: a * 10 + b
Out[3]: 12
#n1 = input("num1:")
#n2 = input("num2:")
#print(int(n1)*int(n2))
    #沒加引號的數字就是數字,可以進行加減乘除。
In [6]: a = "1"
In [7]: b = "2"
In [8]: a + b
Out[8]: '12'
    
    #加了引號的數字是字串,字串間不能乘除,但是可以字串間進行組合,或者字串與數字組合。
In [9]: int(a + b)
Out[9]: 12
In [10]: c = "Tanuki"
In [11]: c * 3
Out[12]: 'TanukiTanukiTanuki'
    
    #利用python定義比變數的語法來實現 變數的資料交換.
In [13]: a,b = 1,2
In [14]: a,b = b,a
In [15]: print (a,b)
2 1
	
#當輸入為單行時,雙引單引無所謂;當輸入多行時,需要三引號。
In [16]: msg = """ 
    ...: 草結它的籽,
    ...: 風搖它的葉,
    ...: 我們就這樣靜默的站著,
    ...: 就十分的美好~
    ...: """
In [17]: msg
Out[17]: ' \n草結它的籽,\n風搖它的葉,\n我們就這樣靜默的站著,\n就十分的美好~\n'
In [17]: help(msg.center)
2、資料型別
#python資料型別:整形、浮點、字串、布林、列表、元組、字典、集合。
#type() 函式,可以返回當前的資料型別:int(),str(),float(),bool(),list(),tuple(),dict(),set()
#bool型別用於邏輯判斷,有True和False兩個值。
In [46]: a = 1
In [47]: b = 2
In [48]: a != b
Out[48]: True
In [49]: a < b
Out[49]: True
#注:判斷等不等於用“!=”進行判斷
#list型別用於存取資料,這裡叫做元素,元素可以是任何型別。
In [62]: a = 1.0
In [63]: b = 2
In [64]: c = “tanuki”
In [71]: sum = [a,b,c]
In [72]: sum
Out[72]: [1.0, 2, 'tanuki']
    
	#list可以呼叫外面的變數,在變數修改後,列表內資料不會改變,需要更新。
In [73]: a = 2.1
In [74]: sum
Out[74]: [1, 2, 'tanuki']
In [75]: sum = [a,b,c]
In [76]: sum
Out[76]: [2.1, 2, 'tanuki']
    
	#list也有增刪改查。
    #改
In [74]: sum[2] = "狸"
In [75]: sum
Out[75]: [2.1, 2, '狸']
    
	#增(插在最後用追加append,插在資料後面用insert)
#In [82]: sum.append(12138)
In [76]: sum.insert(2,20)
In [77]: sum
Out[77]: [2.1, 2, 20, '狸']
    
    #刪(remove會刪掉從左到右的第一個目標,help(sum.remove)檢視使用方法;del需要配合序列號)
In [78]: del sum[0]
In [79]: sum
Out[79]: [2, 20, '狸']
    
    #查(加引號規範一點,使用in函式檢視)
In [84]: 12138 in sum
Out[84]: True
In [85]: 12 in sum
Out[85]: False
    
#tuple元組和列表相似,都可以定義很多資料,最大的不同的是元組內的元素不可修改,且元組物件是可以組合的。
In [3]: names = ["tanuki","狸","狐狸"]
In [4]: names[0] = "fox"
In [5]: names
Out[5]: ['fox', '狸', '狐狸']
In [7]: omae = {"tanuki","狸","狐狸"}
n [10]: omae[0] = "fox"
-----------------------------------
TypeError      Traceback (most recent call last)
<ipython-input-10-e04f1b576c8f> in <module>
----> 1 omae[0] = "fox"
TypeError: 'set' object does not support item assignment
    
	#元組物件可以組合
In [15]: num1 = (1,2)
In [16]: num2 = ("a","b")
In [17]: num3 = num1 + num2
In [18]: num3
Out[18]: (1, 2, 'a', 'b')
    
	#元組可以轉為列表
In [27]: a = tuple(names)
In [28]: a
Out[28]: ('fox', '狸', '狐狸')
In [29]: type(a)
Out[29]: tuple
In [30]: type(names)
Out[30]: list
    
	#元組也可以使用內建函式max,min,sum,len但元素必須都是數字。
In [35]: tpl = [1,2,3]
In [36]: tpl2 = tuple(tpl)
In [37]: sum(tpl2)
Out[37]: 6
In [38]: tpl.append("Tanuki")
In [39]: tpl2 = tuple(tpl)
In [40]: sum(tpl2)
---------------------------------
TypeError    Traceback (most recent call last)
<ipython-input-40-af4fffda333e> in <module>
----> 1 sum(tpl2)
TypeError: unsupported operand type(s) for +: 'int' and 'str'
#dict字典是鍵值對的儲存方式 name :admin,鍵必須是字串,元組或數字型別,值可以是任意型別,key不能重複,value可以重複。(如果新key名稱重複,則記後一個value)
	#del語句進行刪除
In [49]: del dic["omae"]
In [50]: dic
Out[50]: {'name': 'fox'}
    
	#字典中元素是可以修改的,也可以用於增加。
In [51]: dic["omae"] = "tanuki"
In [52]: dic
Out[52]: {'name': 'fox', 'omae': 'tanuki'}
    
    #len函式看長度。
In [54]: len(dic)
Out[54]: 2
In [55]: dir({})
    
    #clear清除字典
In [56]: dic2 = {"sex" : "yes" , "age" : "19"}
In [57]: dic2.clear()
In [58]: dic2
Out[58]: {}
    
	#copy拷貝字典
In [59]: new = dic.copy()
In [60]: new
Out[60]: {'name': 'fox', 'omae': 'tanuki'}
    
	#get(k [,d])該方法中k是字典的鍵值,d是鍵值的預設值。如果k存在,返回value值,否則返回d
In [61]: dic.get("name","sorry")
Out[61]: 'fox'
In [62]: dic.get("name12138","sorry")
Out[62]: 'sorry'
    
	#items使用字典中的key,value,建立一個以元組為元素的列表。
In [63]: new.items()
Out[63]: dict_items([('name', 'fox'), ('omae', 'tanuki')])
    
 	#keys使用字典中key,建立一個列表
In [69]: print(dic.keys())
dict_keys(['name', 'omae'])

	#popitem刪除字典中的第一個元素
In [71]: new
Out[71]: {'name': 'fox', 'omae': 'tanuki'}
In [72]: print(new.popitem())
('omae', 'tanuki')
In [73]: new
Out[73]: {'name': 'fox'}
    
	#setdefault(k [, d])該方法中k是字典的鍵值,d是鍵值的預設值。如果k存在,返回value值,否則返回d,字典內有資料就顯示字典內容,字典沒有就進行新增key:value。
In [73]: new
Out[73]: {'name': 'fox'}
In [74]: print(new.setdefault("omae","tanuki"))
tanuki
In [75]: new
Out[75]: {'name': 'fox', 'omae': 'tanuki'}
    
	#update(E)方法中E是字典物件,由字典物件E來更新字典
In [77]: del new["omae"]
In [78]: new
Out[78]: {'name': 'fox'}
In [79]: print(new.update({'omae' : 'tanuki'}))
None
In [80]: new
Out[80]: {'name': 'fox', 'omae': 'tanuki'}
    
	#value方法使用字典中的value,建立一個列表
In [84]: new.values()
Out[84]: dict_values(['fox', 'tanuki'])

#集合主要用於運算,交集,差集,並集,對稱集合
a = {1,2,3,'a','b'}
b = {1,'a',22,33}
print(a & b) # 交集  {1, 'a'}
print(a - b) # 差集 {'b', 2, 3}  a 集合有,b集合沒有的
print(a | b) # 並集 {1, 2, 3, 33, 'a', 'b', 22} 兩個集合,放到一起,並且去重
print(a ^ b) # 對稱差集 {33, 2, 3, 'b', 22}