不是隔一個(gè)元素
吳起網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,吳起網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為吳起1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的吳起做網(wǎng)站的公司定做!
是因?yàn)槟阋呀?jīng)刪掉前面的一個(gè)對(duì)應(yīng)的位置也就變了。
比如a=['媽媽','爸爸','奶奶','爺爺','姐夫','毛珊','毛豆','姐姐','姑姑','姑父',"霖霖']
此時(shí)a[2]為'奶奶' ,a[3]為'爺爺'
a.pop(2)
那么a就變成了
['媽媽','爸爸','爺爺','姐夫','毛珊','毛豆','姐姐','姑姑','姑父',"霖霖']
此次a[2]為'爺爺',a[3]為'姐夫'
所以如果你想依次刪掉對(duì)應(yīng)的幾個(gè)比如'奶奶','爺爺','姐夫','毛珊'
你可以從后往前刪,這樣前面的位置不受影響
a.pop(5)
a.pop(4)
a.pop(3)
a.pop(2)
由上篇文章我們已經(jīng)得知郵件從發(fā)送到接收的過(guò)程:
發(fā)件人-MUA-MTA-若干MTA-MDA-MUA-收件人
本節(jié)接收郵件主要就是編寫(xiě)一個(gè) MUA 客戶端,從 MDA 將郵件取回本地。
收取郵件最常用的是 POP協(xié)議 ,目前版本是第三版,也稱(chēng) POP3 。python內(nèi)置了 poplib 模塊,支持POP3協(xié)議。
回想上一節(jié) SMTP ,我們對(duì)要發(fā)送的郵件內(nèi)容進(jìn)行了各種編碼,包括添加MIME header,編碼之后再進(jìn)行發(fā)送。
因此,我們通過(guò)POP3協(xié)議接收的也不是原內(nèi)容,而是經(jīng)過(guò)一系列編碼等處理的文本。
所以,要想把POP3收取的文本變?yōu)榭砷喿x的郵件對(duì)象,就需要利用 email 模塊對(duì)原始郵件進(jìn)行解析。
所以,郵件收取的流程就是:
由上一篇 文章 最后總結(jié)部分可知。郵件由字符到發(fā)送到網(wǎng)絡(luò)經(jīng)歷了如下的格式轉(zhuǎn)化:
純文本:
str-bytes-base64-str-bytes
二進(jìn)制文件:
binary code-base64-str-bytes
我們解析郵件也是按這個(gè)思路,逆序解析出內(nèi)容。
這里的 decode('utf-8') 先把字節(jié)流轉(zhuǎn)化為字符串,再將字符串轉(zhuǎn)化為 message 結(jié)構(gòu)的對(duì)象。這步與發(fā)送郵件的 as_string 函數(shù)相反。
先從上一節(jié)結(jié)構(gòu)化的 msg 中取出信件頭,打印出來(lái)。
如果是 multipart 結(jié)構(gòu), get_payload 函數(shù)會(huì)返回一個(gè)包含不同part的list,然后對(duì)每一part遞歸調(diào)用 print_info ,打印子信件頭和子信件內(nèi)容。
不是 multipart 時(shí),之后再依據(jù) Content-Type 作不同處理:
如果是 text :
利用 get_payload(decode = Ture) 取出子信件的內(nèi)容, decode 為T(mén)rue,則按照 Content-Transfer-Type 將 base64 或 QP 解碼為 bytes 。
再 guess_charset 猜出編碼方式,之后將其解碼為字符顯示。
如果不是 Text 對(duì)象,則為附件:
打印出附件的 Content-Type 。
這樣寫(xiě)就可以了:
message=['a','b','c','d']
clone_message=message[:]
popped_message=clone_message.pop(0)
print(message)
print(popped_message)
運(yùn)行結(jié)果如下圖:
集合set的pop隨機(jī)刪除一個(gè)元素,并返回刪除的元素。set里元素不重復(fù)且無(wú)序。既然是隨機(jī),你要控制什么。
字典也有pop,根據(jù)字典的key刪除對(duì)應(yīng)的鍵值對(duì),并返回刪除的那個(gè)值。
而且字典的pop還有第二個(gè)可選參數(shù),比如dic.pop('aaa','沒(méi)找到對(duì)應(yīng)key')。如字典dic中存在key為aaa,那么刪除這個(gè)key和它對(duì)應(yīng)的值,并返回對(duì)應(yīng)值。否則直接返回第二個(gè)參數(shù)內(nèi)容。
本文題目:pop函數(shù)Python pop函數(shù)python用法
網(wǎng)頁(yè)路徑:http://m.rwnh.cn/article12/doopjgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、面包屑導(dǎo)航、App開(kāi)發(fā)、動(dòng)態(tài)網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)