Python3的基礎(chǔ)

一歼捏、元組:  tuple

Python 的元組與列表類似颓影,不同之處在于元組的元素不能修改骆撇。

元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個(gè)元組


tup2 = (111, 22, 33, 444, 55, 6, 77 )forxin(tup2):#遍歷print(x)

list2 = [111, 22, 33, 444, 55, 6, 77 ]

tup2 = tuple(list2)#將列表轉(zhuǎn)變?yōu)樵M


二钾腺、列表:  list

遍歷列表:

#遍歷列表

? list1 = [1, 2, 3, 6, 5, 4]forxin list1:

? ? print(x, end=",")# 運(yùn)行結(jié)果:1,2,3,6,5,4,foriin range(len(list1)):

? ? print("序號(hào):", i,"? 值:", list1[i])fori, valin enumerate(list1):

? ? print("序號(hào):", i,"? 值:", val)foriin list1:

? ? idx = list1.index(i)# 索引if(idx < len(list1) - 1):

? ? ? ? print(i,'---------', list1[idx + 1])


排序列表徙垫、判斷元素是否在列表中:

list1 = [1,2,3,6,5,4]

#排序列表(正序)

list1.sort()forxin list1:

? ? print(x, end=",")

#運(yùn)行結(jié)果:1,2,3,4,5,6,

print("")

#排序列表(倒序)

list1.reverse()

forxin list1:

? ? print(x, end=",") #運(yùn)行結(jié)果:6,5,4,3,2,1,

print("")

#判斷元素是否存在于列表中

if5in list1:

? ? print("5 在list1中")

#在末尾追加新的元素

list1.append(555)

list1.append(555)

print(list1)

#統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù)

print("出現(xiàn)",list1.count(555),"次")

#移除元素,并返回值(默認(rèn)是移除最后一個(gè))print(list1.pop(0))# 移除第一個(gè)

print(list1.pop())# 移除最后一個(gè)


隨機(jī)列表

import random#返回一個(gè)隨機(jī)的項(xiàng)目print(random.choice(range(100)))print(random.choice([1, 2, 3, 5, 9]))print(random.choice('Hello World'))

ls1 = [20, 16, 10, 5];

random.shuffle(ls1) #返回重新洗牌列表垮庐,隨機(jī)

?把數(shù)字列表轉(zhuǎn)換為字符列表

ls1 = [1,2,4,5]

ls2 = [str(i)foriin ls1]print(ls2)# ['1', '2', '4', '5']



三松邪、字典:  dict

dict = {'name':'pp','age': 20,"gender":"man"}

dict["name"] ="sss"forkeyindict.keys():# 遍歷字典。字典的 keys() 方法以列表返回可遍歷的(鍵) 元組數(shù)組哨查。print(key)forvalindict.values():# 遍歷字典逗抑。字典的 values() 方法以列表返回可遍歷的(值) 元組數(shù)組。print(val)forkey, valindict.items():# 遍歷字典寒亥。字典的 items() 方法以列表返回可遍歷的(鍵, 值) 元組數(shù)組邮府。print(key," : ", val)


字典的多級(jí)嵌套:

citys={

? ? '北京':{

? ? ? ? '朝陽':['國(guó)貿(mào)','CBD','天階'],

? ? ? ? '海淀':['圓明園','蘇州街','中關(guān)村','北京大學(xué)'],

? ? ? ? '昌平':['沙河','南口','小湯山',],

? ? ? ? '懷柔':['桃花','梅花','大山']

? ? },

? ? '河北':{

? ? ? ? '石家莊':['石家莊A','石家莊B','石家莊C'],

? ? ? ? '張家口':['張家口A','張家口B','張家口C']

? ? }

}foriincitys['北京']:

? ? print(i)foriincitys['北京']['海淀']:

? ? print(i)


四、集合:? ? ? ? set

集合(set)是一個(gè)無序不重復(fù)元素的序列溉奕。 基本功能是進(jìn)行成員關(guān)系測(cè)試和刪除重復(fù)元素褂傀。

集合無序,元素不能重復(fù)加勤。

去重:將列表轉(zhuǎn)化為集合仙辟,集合再轉(zhuǎn)化為列表,就可以去重鳄梅。

可以使用大括號(hào) { } 或者 set() 函數(shù)創(chuàng)建集合叠国,注意:創(chuàng)建一個(gè)空集合必須用 set() 而不是 { },因?yàn)?{ } 是用來創(chuàng)建一個(gè)空字典戴尸。

student = {'Tom','Jim','Mary','Tom','Jack','Rose'}print(student)# 輸出集合粟焊,重復(fù)的元素被自動(dòng)去掉 {'Mary', 'Jim', 'Rose', 'Jack', 'Tom'} # 成員測(cè)試if('Rose'in student) :

? ? print('Rose 在集合中')else :

? ? print('Rose 不在集合中')#Rose 在集合中

?從一個(gè)大集合里,去除一個(gè)小集合

set000 = set("123456789")

set1 = set(["2","3","5","5","6","0"])print(set000 - set1)#{'7', '8', '9', '1', '4'}




補(bǔ)充:相互轉(zhuǎn)換

1孙蒙、元組 => 列表?

tuple1 = (123,'haha','she','hehe')

list1 = list(tuple1)#將元組轉(zhuǎn)換為列表项棠。運(yùn)行結(jié)果:[123, 'haha', 'she', 'hehe']print(list1)


2、字符串 <=> 列表

str1 ='天地玄黃宇宙洪荒'list1 = list(str1)# 字符串轉(zhuǎn)為列表str2 ="".join(list1)# 列表轉(zhuǎn)為字符串print(str2)

str1 ='天地,玄黃,宇宙,洪荒'list1 = str1.split(",")# 字符串轉(zhuǎn)為列表print(list1)

str1 ='天地玄黃宇宙洪荒'str2 = str1[::-1]# 字符串倒序print(str2)






迭代器挎峦、生成器:http://www.runoob.com/python3/python3-iterator-generator.html

迭代器有兩個(gè)基本的方法:iter()?和?next()

importsys# 引入 sys 模塊list = [1, 2, 3, 4]

it = iter(list)# 創(chuàng)建迭代器對(duì)象while True:

? ? try:

? ? ? ? print(next(it))

? ? except StopIteration:

? ? ? ? sys.exit()


使用了?yield?的函數(shù)被稱為生成器(generator)香追。  跟普通函數(shù)不同的是浑测,生成器是一個(gè)返回迭代器的函數(shù)翅阵,只能用于迭代操作

import sysdeffibonacci(n):# 生成器函數(shù) - 斐波那契a, b, counter = 0, 1, 0

? ? while True:

? ? ? ? if(counter > n):

? ? ? ? ? ? returnyield a

? ? ? ? a, b = b, a + b

? ? ? ? counter += 1f = fibonacci(10)# f 是一個(gè)迭代器,由生成器返回生成while True:

? ? try:

? ? ? ? print(next(f), end="")

? ? except StopIteration:

? ? ? ? sys.exit()


Map迁央,F(xiàn)ilter掷匠,Reduce

Map 會(huì)將一個(gè)函數(shù)映射到一個(gè)輸入列表的所有元素上♂Γ 《镉铩(這個(gè)可以同時(shí)對(duì)list里的所有元素進(jìn)行操作,并以列表方式給出返回值蜂科。)

filter 過濾列表中的元素顽决,并且返回一個(gè)由所有符合要求的元素所構(gòu)成的列表短条。 〔挪ぁ(這個(gè)可以被用來過濾原有的list茸时,并把過濾結(jié)果放進(jìn)新的list里。)

當(dāng)需要對(duì)一個(gè)列表進(jìn)行一些計(jì)算并返回結(jié)果時(shí)赋访,Reduce 是個(gè)非常有用的函數(shù)可都。 ◎镜ⅰ(這個(gè)可以隊(duì)列表順序執(zhí)行算術(shù)運(yùn)算渠牲。)

http://docs.pythontab.com/interpy/Map_Filter/Map/

ls1 = [1, 2, 3, 4, 5]

ls2 = list(map(lambdax: x ** 2, ls1))#加了list轉(zhuǎn)換,是為了python2/3的兼容性步悠。? 在python2中map直接返回列表签杈,但在python3中返回迭代器print(ls2)# [1, 4, 9, 16, 25]ls1 = range(-5, 5)ls2 = filter(lambdax: x > 0, ls1)print(list(ls2))# [1, 2, 3, 4]fromfunctoolsimport reduce

product = reduce((lambdax, y: x * y), [1, 2, 3, 4])# 計(jì)算一個(gè)整數(shù)列表的乘積print(product)# 24


裝飾器:

def a(arg):

? ? passdef b(arg):

? ? passdef c(arg):

? ? passdef decorator(func):

? ? defwrapper(*arg, **kw)

? ? ? ? print('Start ---' , func)

? ? ? ? returnfunc(*arg, **kw)

? ? return wrapper

a = decorator(a)

b = decorator(b)

c = decorator(c)


有問題歡迎一起交流哦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鼎兽,一起剝皮案震驚了整個(gè)濱河市答姥,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌谚咬,老刑警劉巖踢涌,帶你破解...
    沈念sama閱讀 222,946評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異序宦,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)背苦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,336評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門互捌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人行剂,你說我怎么就攤上這事秕噪。” “怎么了厚宰?”我有些...
    開封第一講書人閱讀 169,716評(píng)論 0 364
  • 文/不壞的土叔 我叫張陵腌巾,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我铲觉,道長(zhǎng)澈蝙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,222評(píng)論 1 300
  • 正文 為了忘掉前任撵幽,我火速辦了婚禮灯荧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘盐杂。我一直安慰自己逗载,他們只是感情好哆窿,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,223評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著厉斟,像睡著了一般挚躯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上擦秽,一...
    開封第一講書人閱讀 52,807評(píng)論 1 314
  • 那天码荔,我揣著相機(jī)與錄音,去河邊找鬼号涯。 笑死目胡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的链快。 我是一名探鬼主播誉己,決...
    沈念sama閱讀 41,235評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼域蜗!你這毒婦竟也來了巨双?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,189評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤霉祸,失蹤者是張志新(化名)和其女友劉穎筑累,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體丝蹭,經(jīng)...
    沈念sama閱讀 46,712評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡慢宗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,775評(píng)論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了奔穿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片镜沽。...
    茶點(diǎn)故事閱讀 40,926評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖贱田,靈堂內(nèi)的尸體忽然破棺而出缅茉,到底是詐尸還是另有隱情,我是刑警寧澤男摧,帶...
    沈念sama閱讀 36,580評(píng)論 5 351
  • 正文 年R本政府宣布蔬墩,位于F島的核電站,受9級(jí)特大地震影響耗拓,放射性物質(zhì)發(fā)生泄漏拇颅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,259評(píng)論 3 336
  • 文/蒙蒙 一帆离、第九天 我趴在偏房一處隱蔽的房頂上張望蔬蕊。 院中可真熱鬧,春花似錦、人聲如沸岸夯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,750評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽猜扮。三九已至勉吻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間旅赢,已是汗流浹背齿桃。 一陣腳步聲響...
    開封第一講書人閱讀 33,867評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留煮盼,地道東北人短纵。 一個(gè)月前我還...
    沈念sama閱讀 49,368評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像僵控,于是被迫代替她去往敵國(guó)和親香到。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,930評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • Python3 基礎(chǔ)數(shù)據(jù)類型概覽 每一門語言中报破,都有相應(yīng)的基礎(chǔ)數(shù)據(jù)類型來支撐起該門語言的框架悠就,就如同骨骼較之于人一...
    LouisDrink閱讀 267評(píng)論 0 1
  • 注釋 python中使用‘#’注釋一行代碼,多行注釋使用""" """ 格式化輸出 %s 格式化的內(nèi)容是字符串類型...
    胡亂唱歌ing閱讀 336評(píng)論 0 0
  • 1.元組的定義元組用()充易,有序梗脾,不可修改。例如:a = (1,2,3,4,5)print(a)定義一個(gè)空元組盹靴。b ...
    余安緣閱讀 201評(píng)論 0 0
  • 前言:python大名如雷貫耳炸茧,最近自己花了點(diǎn)時(shí)間學(xué)習(xí)了一波python語法,發(fā)現(xiàn)想要入門還是很簡(jiǎn)單的稿静,現(xiàn)在整理了...
    小民不言語閱讀 240評(píng)論 0 1
  • 推薦指數(shù): 6.0 書籍主旨關(guān)鍵詞:特權(quán)宇立、焦點(diǎn)、注意力自赔、語言聯(lián)想、情景聯(lián)想 觀點(diǎn): 1.統(tǒng)計(jì)學(xué)現(xiàn)在叫數(shù)據(jù)分析柳琢,社會(huì)...
    Jenaral閱讀 5,726評(píng)論 0 5