作者:fy88fy
來源:https://my.oschina.net/u/3804957/blog/1788302
1. 元組
Python的元組與串列類似,不同之處在於元組的元素不能修改。元組使用小括號,串列使用方括號。元組建立很簡單,只需要在括號中新增元素,並使用逗號隔開即可。
-
元組和串列十分相似
-
元組和字串一樣是不可以變的。
-
元組可以儲存一系列的值
-
元組通常用在使用者定義的函式能夠安全地採用一組值的時候,即被使用的元組的值不會改變。
如下實體:
>>> t = (1,3,5,'a',(1,))
>>> type(t)
<class 'tuple'>
>>> print(t)
(1, 3, 5, 'a', (1,))
建立空元組:
tup1 = ();
元組中只包含一個元素時,需要在元素後面新增逗號:
tup1 = (50,);
1.1 元組操作:
-
元組和字串一樣屬於序列型別,可以透過索引和切片操作
-
元組值不可變
元組的拆分:
>> t = (1,2,3)
>>> a,b,c = t
>>> print(t)
(1, 2, 3)
>>> print(a)
1
>>> print(b+c)
5
>>> t = (1,3,5,'a',(1,))
>>> type(t)
>>> print(t)
(1, 3, 5, 'a', (1,))
>>> print(t[1])
3
元組中取用變數:
>>> print(t)
(1, 2, 3)
>>> t1 = (t,4,5,"abc")
>>> print(t1)
((1, 2, 3), 4, 5, 'abc')
元組切片:
>>> t1 = (t,4,5,"abc")
>>> print(t1)
((1, 2, 3), 4, 5, 'abc')
>>> x,y,z,m = t1
>>> print(x)
(1, 2, 3)
>>> print(m)
abc
1.2 元組的方法:
(1) index()方法:檢視元素下標是多少
>>> t = (1,3,5,6,6,7,7,8)
>>> t.index(3)
1
>>> t.index(8)
7
(2) conunt()方法:統計某無素的個數
>>> t = (1,3,5,6,6,7,7,8)
>>> t.count(6)
2
>>> t.count(8)
1
元組中的內建函式:
1 |
len(tuple) |
2 |
max(tuple) |
3 |
min(tuple) |
4 |
tuple(seq) |
舉例如下:
>>> tuple1 = (1,2,3)
>>> tuple2 = (2,3,4,5)
>>> len(tuple1)
3
>>> max(tuple1)
3
>>> min(tuple1)
1
>>> list = [1,3,5,6,7]
>>> tuple(list)
(1, 3, 5, 6, 7)
>>> list
[1, 3, 5, 6, 7]
2.字典
字典是python中的唯一的對映型別(雜湊表)。字典物件是可變的,但是字典的鍵必須使用不可變物件,一個字典中可以使用不同型別的鍵值。字典是另一種可變容器模型,且可儲存任意型別物件。字典的每個鍵值 key=>value 對用冒號 : 分割,每個鍵值對之間用逗號 , 分割,整個字典包括在花括號 {} 中 ,格式為d = {key1 : value1, key2 : value2 }。鍵必須是唯一的,但值則不必。值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組。
字典的方法
-
keys()
-
values()
-
get()
-
items()
舉例如下:
>>> dic = {'a':1,'b':2}
>>> dic
{'a': 1, 'b': 2}
>>> dic.keys()
dict_keys(['a', 'b'])
>>> dic.values()
dict_values([1, 2])
>>> len(dic)
2
>>> dic = {'a':1,'b':2}
>>> dic.get('b')
2
>>> dic["b"]
2
更改字典內value:
>>> dic
{'a': 1, 'b': 2}
>>> dic['a'] = 8
>>> dic
{'a': 8, 'b': 2}
檢視key是不是在字典裡
>>> dic
{'a': 1, 'b': 2}
>>> 'b' in dic
True
>>> "c" in dic
False
變為串列:
>>> dic
{'a': 8, 'b': 2}
>>> dic.items()
dict_items([('a', 8), ('b', 2)])
複製字典:
>>> dic
{'a': 8, 'b': 2}
>>> dic1 = dic.copy()
>>> dic1
{'a': 8, 'b': 2}
刪除字典內容:
>>> dic
{'a': 8, 'b': 2}
>>> dic.pop("a")
8
>>> dic
{'b': 2}
更新字典,兩個字典更新為一個:
>>> dic
{'b': 2}
>>> dic1
{'a': 8, 'b': 2}
>>> dic.update(dic1)
>>> dic
{'b': 2, 'a': 8}
建立字典:
>>> dic = {}
>>> dic = dict()
>>> dict(a=1,b=2)
{'a': 1, 'b': 2}
>>> dict((["c",3],["d",4]))
{'c': 3, 'd': 4}
#fromkeys(),字典元素有相同的值時,預設為None.
>>> dic.fromkeys('abcd')
{'a': None, 'b': None, 'c': None, 'd': None}
#自動生成100個key,value預設為100
dic.fromkeys(range(100),100)
{0: 100, 1: 100, 2: 100, 3: 100, 4: 100, 5: 100, 6: 100, 7: 10.....100:100}
訪問字典:
>>> dic1
{'a': 8, 'b': 2}
>>> dic["b"]
2
for迴圈訪問:
>>> for k,v in dic1.items():print(k,v)
...
a 8
b 2
3.Python3中常用的方法
help()檢視幫助資訊
>> help(list)
Help on list object:
class list(object)
| list() -> new empty list
| list(iterable) -> new list initialized from iterable's items
dir() 看當前環境中變數
>>> dir()
['__builtins__', 'a', 'b', 'c', 'dic', 'dic1', 'django', 'django_manage_shell', 'i', 'input', 'k', 'list', 'm', 'sys', 't', 't1', 'tuple1', 'tuple2', 'v', 'x', 'y', 'z']
型別轉換:
-
str()
-
int()
-
list()
-
dict()
-
tuple()
自動生成序列:
range()
>>> for i in range(10):print(i)
...
0
1
2
3
4
5
6
7
8
9
可迭代的,迴圈取值:
items()
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/4/1 21:56
# @Author : Feng Xiaoqing
# @File : test.py
# @Function: -----------
list1 = {1:1,2:2,3:3}
for i in list1.items():
print(i)
#結果:
(1, 1)
(2, 2)
(3, 3)
預設輸入都為字串:
input ()
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/4/1 21:56
# @Author : Feng Xiaoqing
# @File : test.py
# @Function: -----------
x = input("x = ")
print(x)
求長度:
len()
>>> list
[1, 3, 5, 6, 7]
>>> len(list)
5
看型別:
type()
>>> type(list)
<class 'list'>
a是不是什麼型別
isinstance(a,list)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/4/1 21:56
# @Author : Feng Xiaoqing
# @File : test.py
# @Function: -----------
list1 = [1,3,5]
print(list1)
a=isinstance(list1,list)
print(a)
#結果
[1, 3, 5]
True
有沒有某屬性
print(hasttr(l1,”append”))
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/4/1 21:56
# @Author : Feng Xiaoqing
# @File : test.py
# @Function: -----------
list1 = [1,3,5]
print(list1)
a=hasattr(list1,"append")
print(a)
#結果
[1, 3, 5]
True
列印結果:
print()
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/4/1 21:56
# @Author : Feng Xiaoqing
# @File : test.py
# @Function: -----------
a="hello fengxiaoqing"
print(a)
#結果:
hello fengxiaoqing
生成可迭代串列,(index,value)
enumerate()
>>> for i in enumerate(list):
... print(i)
...
(0, 1)
(1, 3)
(2, 5)
(3, 6)
(4, 7)
《Python人工智慧和全棧開發》2018年07月23日即將在北京開課,120天衝擊Python年薪30萬,改變速約~~~~
*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。
– END –
更多Python好文請點選【閱讀原文】哦
↓↓↓