python基礎(2)

來源:互聯網
上載者:User

標籤:記憶體   發送   mime   string   添加   why   常用   import   als   

列表

序列是最基本的資料結構,序列中的每個元素都分配一個數字,它的位置索引第一個是0,第二個是1,以此類推
列表是最常用的python資料類型,作為一個方括弧內的逗號分隔值出現
列表的資料項目不需要具有相同的類型

python列表函數

序號 函數
1 len(list)
列表元素個數
2 max(list)
返回列表元素最大值
3 min(list)
返回列表元素最小值
4 list(seq)
將元群組轉換為列表

元組

元組和列表類似,不同之處在於元組的元素不能修改
元組使用小括弧,列表使用方括弧
元組建立很簡單,只需要在括弧中添加元素,並使用逗號隔開即可

 

set集合

集合是一個無序不重複元素的序列。
準系統是進行成員關係測試和重複資料刪除元素

 

li = [] 建立一個列表,這種方法在python內部實際是會調用list()這種方法。
list()建立列表的另外一種方法
注:類後面加一個括弧(),就是調用了類的_init_方法,執行這個方法的時候,需要接收一個參數。
比如在list((11,22,33,44))裡面就傳了一個元組進來。
在_init_內部實際是執行了一個for迴圈,這個for迴圈就去迴圈元組裡面的所有元素,然後挨個去建立。

dic = {"k1":v123} 建立一個字典,key:value是一個索引值對,一個索引值對代表的是字典的一個元素
se = {"123","456"} 建立一個集合,和建立一個字典很像都是用大括弧{}建立,但是有不一樣的地方,不再以索引值對作為一個元素,而是寫一個什麼東西它就是一個元素。

函數

面向過程編碼:
意思是從上到下寫,按照邏輯一點一點的寫,當遇到相同功能的時候,複製粘貼相同的代碼實現,這就叫面向過程編程。
代碼可讀性差
執行效率低

函數式編程:
函數式:將某功能代碼封裝到函數中,日後便無需重複編寫,僅調用函數即可
物件導向:對函數進行分類和封裝,讓開發“更快更好更強...”
函數式編程最重要的是增強代碼的重用性和可讀性

函數:
定義函數

name 叫做函數func的形式參數,簡稱:形參
def func(name):
print name

執行函數
‘wupeiqi‘ 叫做函數func的實際參數,簡稱:實參
func(‘wupeiqi‘)

 

函數定義:
def 函數名(): 第一步建立函數
...
函數體 放到記憶體,函數體在建立的時候是不被執行的,調用的時候才被執行。
...
調用函數()
傳回值 第二步,函數中一旦執行return,函數執行過程立即終止,不再向下執行。

# 普通參數:嚴格按照順利,將實際參數賦值給形式參數

# def send(name):
# ...
# send("eric")


def sendmail(mail_addr): #第一步、建立函數 (mail_addr是形式參數)第三步、mail_addr = {str}‘[email protected]‘
try: # 這個功能是捕捉異常,目前還沒學到。
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

msg = MIMEText(‘郵件內容‘, ‘plain‘, ‘utf-8‘)
msg[‘From‘] = formataddr(["福田", ‘[email protected]‘])
msg[‘To‘] = formataddr(["走人", ‘[email protected]‘])
msg[‘Subject‘] = "主題"

server = smtplib.SMTP("smtp.163.com", 25)
server.login("[email protected]", "521why,.")
server.sendmail(‘[email protected]‘, [mail_addr, ], msg.as_string()) #將收件者地址‘[email protected]‘換成一個變數
server.quit()
except: #只要try下面的代碼,捕捉到異常,就會執行except裡面的代碼
#發送失敗執行
# return False #以上代碼執行失敗,就返回一個False
return "no" #返回的也可以是字串
else:
#發送成功執行
# return True #否則,返回一個True
return "yes" #return傳回值給函數調用者sendmail,



# sendmail()
# ret = sendmail(‘[email protected]‘) #第二步、調用函數 (‘[email protected]‘是實際參數)
# ret = sendmail("[email protected]")
# print(ret)
# if ret == True: #通過判斷ret是False還是True來顯示發送狀態
# # if ret == "cc": #也可以判斷返回的是不是定義的字串值
# print("發送成功")
# else:
# print("發送失敗")

while True:
em = input("請輸入郵箱地址:")
# sendmail(em)
result = sendmail(em) #em是參數傳遞的內容,可以是多個
# print(result)
if result == "yes":
print("發送成功")
else:
print("發送失敗")

python基礎(2)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.