定義元組(tuple):
涇源網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,涇源網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為涇源數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的涇源做網(wǎng)站的公司定做!
t1=(1,2,3,4)#多個(gè)數(shù)據(jù)元組
t2=(1,)#如果元組內(nèi)只有一個(gè)數(shù)據(jù),也需要手逗號(hào)隔開,否則這個(gè)數(shù)據(jù)將是他本身的類型。
元組的操作:
元組類型數(shù)據(jù)不支持修改,可查找
查找:
按下標(biāo)查找:
print(t1[1])
函數(shù)查找:
print(t1.index(1))返回對(duì)應(yīng)下標(biāo),如果數(shù)據(jù)不存在,程序?qū)?bào)錯(cuò)
print(t1.count(1))統(tǒng)計(jì)數(shù)據(jù)在元組當(dāng)中出現(xiàn)的次數(shù)
print(len(t1))統(tǒng)計(jì)元組當(dāng)中的數(shù)據(jù)個(gè)數(shù)
注意:當(dāng)元組內(nèi)嵌套列表數(shù)據(jù),可以通過下標(biāo)的方法對(duì)列表數(shù)據(jù)進(jìn)行修改如:
t3=(1,2,["a","b"])
t3[2][0]=c #t3的值將變?yōu)?1,2,["c","b"])
——————————————————
——————————————————
定義字典(dict)
字典的特點(diǎn)
1:符號(hào)為{}
2:數(shù)據(jù)為鍵(key)值(value)對(duì)形式,每個(gè)鍵值對(duì)之間用逗號(hào)隔開如:
dict1={"name":"小明","age":18,"gender:男"}
字典的操作:
dict1["name"]="小紅"
dict1["id"]=3
如果key存在,將修改其所對(duì)應(yīng)的值。如果不存在,將在字典最后添加該鍵值對(duì)
2.刪除數(shù)據(jù)
del():刪除字典或刪除字典內(nèi)的鍵值對(duì)
del dict1["name"] 刪除字典內(nèi)的鍵值對(duì),如果刪除的key不存在,程序?qū)?huì)報(bào)錯(cuò)
del(del)刪除字典
clear(dict1) 清空字典
3.查找數(shù)據(jù)
一.按照key進(jìn)行查找,最后返回相對(duì)應(yīng)的值
二.按函數(shù)進(jìn)行查找:
(1) get(key,默認(rèn)值):
如果查找的key不存在則返回所寫的默認(rèn)值,如果不寫默認(rèn)值則返回None
dict1={"name":"小明","age":18,"gender:男"}
print(dict1.get("name")) #小明
print(dict1.get("id",110)) # 110
——————————————————
(2) keys():返回字典內(nèi)的所有key 可用for遍歷
print(dict1.keys())
返回 ["name","age","gender"]
for key in dict1.keys():
..print(key)
逐行輸出name age gender
——————————————————
(3) values(): 返回字典內(nèi)的值 可用for遍歷
print(dict1.values())
返回["小明",18,"男"]
for value dict1.values():
..print(value)
逐行輸出小明 18 男
——————————————————
(4) items():將字典內(nèi)的數(shù)據(jù)以元組的形式返回
print(dict1.items()) 可用for遍歷
返回[("name","小明"),("age",18),("gender","男")]
for item in dict1.items():
..print(item)
逐行輸出 ("name","小明") ("age",18)("gender","男")
——————————————————
遍歷字典鍵值對(duì)(拆包) 可在for內(nèi)使用兩個(gè)臨時(shí)變量
dict1={"name":"小明","age":18,"gender:男"}
for key,value in dict1.items():
..print(f"{key}=value")
逐行輸出:
name=小明 age=18 gender=男
python中遇到不明白的地方,可以試試help
這里要查看find的作用,可以鍵入help(str.find),然后得到提示如下:
Help?on?method_descriptor:
find(...)
S.find(sub[,?start[,?end]])?-?int
Return?the?lowest?index?in?S?where?substring?sub?is?found,
such?that?sub?is?contained?within?S[start:end].??Optional
arguments?start?and?end?are?interpreted?as?in?slice?notation.
Return?-1?on?failure.
解釋要點(diǎn)大致如下:
find()方法檢測(cè)字符串S中是否包含子字符串sub,如果指定start(開始) 和 end(結(jié)束)范圍,則檢查是否包含在指定范圍內(nèi),如果包含子字符串返回開始的索引值(如果包含多個(gè)字串,只返回最左邊出現(xiàn)的索引值),查找失敗返回-1。以本題為例:
s="abcd1234"
s.find("cd"),在字符串s中查找字串"cd"第一次出現(xiàn)時(shí)s中的索引值,因?yàn)樗饕龔?開始,所以結(jié)果為2,注意s中出現(xiàn)多次cd的情況,例如:
s="abcd1234cd"
s.find("cd")的結(jié)果依然是2,找不到時(shí)返回-1,比如:
s="1234"
s.find("cd")的結(jié)果為-1
1、print()函數(shù):打印字符串;
2、raw_input()函數(shù):從用戶鍵盤捕獲字符;
3、len()函數(shù):計(jì)算字符長度;
4、format()函數(shù):實(shí)現(xiàn)格式化輸出;
5、type()函數(shù):查詢對(duì)象的類型;
6、int()函數(shù)、float()函數(shù)、str()函數(shù)等:類型的轉(zhuǎn)化函數(shù);
7、id()函數(shù):獲取對(duì)象的內(nèi)存地址;
8、help()函數(shù):Python的幫助函數(shù);
9、s.islower()函數(shù):判斷字符小寫;
10、s.sppace()函數(shù):判斷是否為空格;
11、str.replace()函數(shù):替換字符;
12、import()函數(shù):引進(jìn)庫;
13、math.sin()函數(shù):sin()函數(shù);
14、math.pow()函數(shù):計(jì)算次方函數(shù);
15、os.getcwd()函數(shù):獲取當(dāng)前工作目錄;
16、listdir()函數(shù):顯示當(dāng)前目錄下的文件;
17、time.sleep()函數(shù):停止一段時(shí)間;
18、random.randint()函數(shù):產(chǎn)生隨機(jī)數(shù);
19、range()函數(shù):返回一個(gè)列表,打印從1到100;
20、file.read()函數(shù):讀取文件返回字符串;
21、file.readlines()函數(shù):讀取文件返回列表;
22、file.readline()函數(shù):讀取一行文件并返回字符串;
23、split()函數(shù):用什么來間隔字符串;
24、isalnum()函數(shù):判斷是否為有效數(shù)字或字符;
25、isalpha()函數(shù):判斷是否全為字符;
26、isdigit()函數(shù):判斷是否全為數(shù)字;
27、 lower()函數(shù):將數(shù)據(jù)改成小寫;
28、upper()函數(shù):將數(shù)據(jù)改成大寫;
29、startswith(s)函數(shù):判斷字符串是否以s開始的;
30、endwith(s)函數(shù):判斷字符串是否以s結(jié)尾的;
31、file.write()函數(shù):寫入函數(shù);
32、file.writeline()函數(shù):寫入文件;
33、abs()函數(shù):得到某數(shù)的絕對(duì)值;
34、file.sort()函數(shù):對(duì)書數(shù)據(jù)排序;
35、tuple()函數(shù):創(chuàng)建一個(gè)元組;
36、find()函數(shù):查找 返回的是索引;
37、dict()函數(shù):創(chuàng)建字典;
38、clear()函數(shù):清楚字典中的所有項(xiàng);
39、copy()函數(shù):復(fù)制一個(gè)字典,會(huì)修改所有的字典;
40、 get()函數(shù):查詢字典中的元素。
…………
1、方法一: 利用數(shù)組自身的特性 a.index(target), 其中a是目標(biāo)list,target是需要的下標(biāo)對(duì)應(yīng)的值。代碼如下:
可知索引為2。但是如果a中有多個(gè)76元素,這種方法僅僅能獲取都第一個(gè)匹配的value的下標(biāo)索引。
2、方法二:利用enumerate函數(shù)。
代碼如下:
運(yùn)行結(jié)果:
擴(kuò)展資料:
python通過索引的操作(Python包含6種內(nèi)建序列:列表、元組、字符串、Unicode字符串、buffer對(duì)象、xrange對(duì)象):
1、索引:
負(fù)數(shù)索引與正數(shù)索引之間存在一個(gè)規(guī)律: 當(dāng)正數(shù)索引+負(fù)數(shù)索引的絕對(duì)值=元素的個(gè)數(shù),它們所指的是同一個(gè)元素。
2、分片:
分片用于截取某個(gè)范圍內(nèi)的元素,通過:來指定起始區(qū)間(左閉右開區(qū)間,包含左側(cè)索引值對(duì)應(yīng)的元素,但不包含右測(cè)索引值對(duì)應(yīng)的元素)。
分片包括起始索引對(duì)應(yīng)的元素,但不包括終止索引對(duì)應(yīng)的元素,索引為正值時(shí)可以發(fā)生越界但只會(huì)取到最后一個(gè)元素。如果索引值為負(fù)值,則表示從最右邊元素開始,此時(shí)需避免索引越界。
python的常用內(nèi)置函數(shù)
1.abs() 函數(shù)返回?cái)?shù)字的絕對(duì)值
abs(-40)=40
2. dict() 函數(shù)用于創(chuàng)建一個(gè)字典
dict()
{} ? ? ?#創(chuàng)建一個(gè)空字典類似于u={},字典的存取方式一般為key-value
例如u = {"username":"tom", ?"age":18}
3. help() 函數(shù)用于查看函數(shù)或模塊用途的詳細(xì)說明
help('math')查看math模塊的用處
a=[1,2,3,4]
help(a)查看列表list幫助信息
4.dir()獲得當(dāng)前模塊的屬性列表
dir(help)
['__call__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
5.min() 方法返回給定參數(shù)的最小值 /參數(shù)可以為序列
a=? min(10,20,30,40)
a
10
6. next() 返回迭代器的下一個(gè)項(xiàng)目
it = iter([1, 2, 3, 4, 5])
next(it)
1
next(it)
2
7. id() 函數(shù)用于獲取對(duì)象的內(nèi)存地址
a=12
id(a)
1550569552
8.enumerate() 函數(shù)用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo),一般用在 for 循環(huán)當(dāng)中。
a=["tom","marry","leblan"]
list(enumerate(a))
[(0, 'tom'), (1, 'marry'), (2, 'leblan')]
9. oct() 函數(shù)將一個(gè)整數(shù)轉(zhuǎn)換成8進(jìn)制字符串
oct(15)
'0o17'
oct(10)
'0o12'
10. bin() 返回一個(gè)整數(shù) int 或者長整數(shù) long int 的二進(jìn)制表示
bin(10)
'0b1010'
bin(15)
'0b1111'
11.eval() 函數(shù)用來執(zhí)行一個(gè)字符串表達(dá)式,并返回表達(dá)式的值
eval('2+2')
4
12.int() 函數(shù)用于將一個(gè)字符串會(huì)數(shù)字轉(zhuǎn)換為整型
int(3)
3
int(3.6)
3
int(3.9)
3
int(4.0)
4
13.open() 函數(shù)用于打開一個(gè)文件,創(chuàng)建一個(gè)file對(duì)象,相關(guān)的方法才可以調(diào)用它進(jìn)行讀寫
f=open('test.txt')
14.str() 函數(shù)將對(duì)象轉(zhuǎn)化為適于人閱讀的形式
str(3)
'3'
15. bool() 函數(shù)用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果沒有參數(shù),返回 False
bool()
False
bool(1)
True
bool(10)
True
bool(10.0)
True
16.isinstance() 函數(shù)來判斷一個(gè)對(duì)象是否是一個(gè)已知的類型
a=5
isinstance(a,int)
True
isinstance(a,str)
False
17. sum() 方法對(duì)系列進(jìn)行求和計(jì)算
sum([1,2,3],5)
11
sum([1,2,3])
6
18. super() 函數(shù)用于調(diào)用下一個(gè)父類(超類)并返回該父類實(shí)例的方法。super 是用來解決多重繼承問題的,直接用類名調(diào)用父類方法
class ? User(object):
? def__init__(self):
class Persons(User):
? ? ? ? super(Persons,self).__init__()
19. float() 函數(shù)用于將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù)
float(1)
1.0
float(10)
10.0
20. iter() 函數(shù)用來生成迭代器
a=[1,2,3,4,5,6]
iter(a)
for i in iter(a):
... ? ? ? ? print(i)
...
1
2
3
4
5
6
21.tuple 函數(shù)將列表轉(zhuǎn)換為元組
a=[1,2,3,4,5,6]
tuple(a)
(1, 2, 3, 4, 5, 6)
22.len() 方法返回對(duì)象(字符、列表、元組等)長度或項(xiàng)目個(gè)數(shù)
s = "playbasketball"
len(s)
14
a=[1,2,3,4,5,6]
len(a)
6
23. property() 函數(shù)的作用是在新式類中返回屬性值
class User(object):
?def __init__(self,name):
? ? ? ? ? self.name = name
def get_name(self):
? ? ? ? ? return self.get_name
@property
?def name(self):
? ? ? ? ?return self_name
24.type() 函數(shù)返回對(duì)象的類型
25.list() 方法用于將元組轉(zhuǎn)換為列表
b=(1,2,3,4,5,6)
list(b)
[1, 2, 3, 4, 5, 6]
26.range() 函數(shù)可創(chuàng)建一個(gè)整數(shù)列表,一般用在 for 循環(huán)中
range(10)
range(0, 10)
range(10,20)
range(10, 20)
27. getattr() 函數(shù)用于返回一個(gè)對(duì)象屬性值
class w(object):
... ? ? ? ? ? ? s=5
...
a = w()
getattr(a,'s')
5
28. complex() 函數(shù)用于創(chuàng)建一個(gè)復(fù)數(shù)或者轉(zhuǎn)化一個(gè)字符串或數(shù)為復(fù)數(shù)。如果第一個(gè)參數(shù)為字符串,則不需要指定第二個(gè)參數(shù)
complex(1,2)
(1+2j)
complex(1)
(1+0j)
complex("1")
(1+0j)
29.max() 方法返回給定參數(shù)的最大值,參數(shù)可以為序列
b=(1,2,3,4,5,6)
max(b)
6
30. round() 方法返回浮點(diǎn)數(shù)x的四舍五入值
round(10.56)
11
round(10.45)
10
round(10.45,1)
10.4
round(10.56,1)
10.6
round(10.565,2)
10.56
31. delattr 函數(shù)用于刪除屬性
class Num(object):
...? ? a=1
...? ? b=2
...? ? c=3.
.. print1 = Num()
print('a=',print1.a)
a= 1
print('b=',print1.b)
b= 2
print('c=',print1.c)
c= 3
delattr(Num,'b')
print('b=',print1.b)
Traceback (most recent call last):? File "", line 1, inAttributeError: 'Num' object has no attribute 'b'
32. hash() 用于獲取取一個(gè)對(duì)象(字符串或者數(shù)值等)的哈希值
hash(2)
2
hash("tom")
-1675102375494872622
33. set() 函數(shù)創(chuàng)建一個(gè)無序不重復(fù)元素集,可進(jìn)行關(guān)系測(cè)試,刪除重復(fù)數(shù)據(jù),還可以計(jì)算交集、差集、并集等。
a= set("tom")
b = set("marrt")
a,b
({'t', 'm', 'o'}, {'m', 't', 'a', 'r'})
ab#交集
{'t', 'm'}
a|b#并集
{'t', 'm', 'r', 'o', 'a'}
a-b#差集
{'o'}
1、get() 返回指定鍵的值,如果值不在字典中返回default值。
語法:dict.get(key,default=None)
參數(shù):
key 字典中要查找的鍵。
default 如果指定鍵的值不存在時(shí),返回該默認(rèn)值值。
例:
dict={'Name':'alex','Age':21}
print("Name is:%s"% dict.get('Name')+"\n"+ "Age is:%d"% dict.get('Age'))
顯示結(jié)果為:
Name is:alex
Age is:21
2、update() 將一個(gè)字典中的值更新到另一個(gè)字典中。
語法:dict.update(dict2)
參數(shù):
dict2 添加到指定字典dict里的字典。
例:
dict={'Name':'alex','Age':21}
dict2={'Sex':'female'}
dict.update(dict2)
print("Value is %s" % dict)
顯示結(jié)果為:
Value is {'Name': 'alex', 'Age': 21, 'Sex': 'female'}