newemptysetobjectset(iterable)->newsetobjectBuildanunorderedcollectionofuniqueelements."""defadd(self,*args,**kwargs):#realsignatureunknown"""Addanelementtoaset,添加元素Thish" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python常用知識(shí)點(diǎn)匯總

系統(tǒng) 1822 0

1、Set基本數(shù)據(jù)類(lèi)型

a、set集合,是一個(gè)無(wú)序且不重復(fù)的元素集合

            
class set(object):
  """
  set() -> new empty set object
  set(iterable) -> new set object
   
  Build an unordered collection of unique elements.
  """
  def add(self, *args, **kwargs): # real signature unknown
    """
    Add an element to a set,添加元素
     
    This has no effect if the element is already present.
    """
    pass
 
  def clear(self, *args, **kwargs): # real signature unknown
    """ Remove all elements from this set. 清楚內(nèi)容"""
    pass
 
  def copy(self, *args, **kwargs): # real signature unknown
    """ Return a shallow copy of a set. 淺拷貝 """
    pass
 
  def difference(self, *args, **kwargs): # real signature unknown
    """
    Return the difference of two or more sets as a new set. A中存在,B中不存在
     
    (i.e. all elements that are in this set but not the others.)
    """
    pass
 
  def difference_update(self, *args, **kwargs): # real signature unknown
    """ Remove all elements of another set from this set. 從當(dāng)前集合中刪除和B中相同的元素"""
    pass
 
  def discard(self, *args, **kwargs): # real signature unknown
    """
    Remove an element from a set if it is a member.
     
    If the element is not a member, do nothing. 移除指定元素,不存在不保錯(cuò)
    """
    pass
 
  def intersection(self, *args, **kwargs): # real signature unknown
    """
    Return the intersection of two sets as a new set. 交集
     
    (i.e. all elements that are in both sets.)
    """
    pass
 
  def intersection_update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the intersection of itself and another. 取交集并更更新到A中 """
    pass
 
  def isdisjoint(self, *args, **kwargs): # real signature unknown
    """ Return True if two sets have a null intersection. 如果沒(méi)有交集,返回True,否則返回False"""
    pass
 
  def issubset(self, *args, **kwargs): # real signature unknown
    """ Report whether another set contains this set. 是否是子序列"""
    pass
 
  def issuperset(self, *args, **kwargs): # real signature unknown
    """ Report whether this set contains another set. 是否是父序列"""
    pass
 
  def pop(self, *args, **kwargs): # real signature unknown
    """
    Remove and return an arbitrary set element.
    Raises KeyError if the set is empty. 移除元素
    """
    pass
 
  def remove(self, *args, **kwargs): # real signature unknown
    """
    Remove an element from a set; it must be a member.
     
    If the element is not a member, raise a KeyError. 移除指定元素,不存在保錯(cuò)
    """
    pass
 
  def symmetric_difference(self, *args, **kwargs): # real signature unknown
    """
    Return the symmetric difference of two sets as a new set. 對(duì)稱(chēng)交集
     
    (i.e. all elements that are in exactly one of the sets.)
    """
    pass
 
  def symmetric_difference_update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the symmetric difference of itself and another. 對(duì)稱(chēng)交集,并更新到a中 """
    pass
 
  def union(self, *args, **kwargs): # real signature unknown
    """
    Return the union of sets as a new set. 并集
     
    (i.e. all elements that are in either set.)
    """
    pass
 
  def update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the union of itself and others. 更新 """
    pass


          

b、數(shù)據(jù)類(lèi)型模塊舉例

            
se = {11,22,33,44,55}
be = {44,55,66,77,88}
# se.add(66)
# print(se)  #添加元素,不能直接打印!
#
#
#
# se.clear()
# print(se)     #清除se集合里面所有的值,不能清除單個(gè)
#
#
#
# ce=be.difference(se)  #se中存在,be中不存在的值,必須賦值給一個(gè)新的變量
# print(ce)
#
#
# se.difference_update(be)
# print(se)         #在se中刪除和be相同的值,不能賦值給一個(gè)新的變量,先輸入轉(zhuǎn)換,然后打印,也不能直接打印!
# se.discard(11)
# print(se)          #移除指定元素,移除不存在的時(shí)候,不會(huì)報(bào)錯(cuò)
# se.remove(11)
# print(se)       #移除指定的元素,移除不存在的會(huì)報(bào)錯(cuò)
# se.pop()
# print(se)        #移除隨機(jī)的元素
#
#
# ret=se.pop()
# print(ret)       #移除元素,并且可以把移除的元素賦值給另一個(gè)變量
# ce = se.intersection(be)
# print(ce)    #取出兩個(gè)集合的交集(相同的元素)
# se.intersection_update(be)
# print(se)    #取出兩個(gè)集合的交集,并更新到se集合中
# ret = se.isdisjoint(be)
# print(ret)     #判斷兩個(gè)集合之間又沒(méi)有交集,如果有交集返回False,沒(méi)有返回True
# ret=se.issubset(be)
# print(ret)     #判斷se是否是be集合的子序列,如果是返回True,不是返回Flase
# ret = se.issuperset(be)
# print(ret)     #判斷se是不是be集合的父序列,如果是返回True,不是返回Flase
# ret=se.symmetric_difference(be)
# print(ret)     #對(duì)稱(chēng)交集,取出除了不相同的元素
# se.symmetric_difference_update(be)
# print(se)     #對(duì)稱(chēng)交集,取出不相同的元素并更新到se集合中
# ret = se.union(be)
# print(ret)     #并集,把兩個(gè)元素集合并在一個(gè)新的變量中


          

2、深淺拷貝

a、數(shù)字和字符串

??? 對(duì)于 數(shù)字 和 字符串 而言,賦值、淺拷貝和深拷貝無(wú)意義,因?yàn)槠溆肋h(yuǎn)指向同一個(gè)內(nèi)存地址。

            
import copy
# ######### 數(shù)字、字符串 #########
n1 = 123
# n1 = "i am alex age 10"
print(id(n1))
# ## 賦值 ##
n2 = n1
print(id(n2))
# ## 淺拷貝 ##
n2 = copy.copy(n1)
print(id(n2))
  
# ## 深拷貝 ##
n3 = copy.deepcopy(n1)
print(id(n3))


          

Python常用知識(shí)點(diǎn)匯總_第1張圖片

?b、其他基本數(shù)據(jù)類(lèi)型

對(duì)于字典、元祖、列表 而言,進(jìn)行賦值、淺拷貝和深拷貝時(shí),其內(nèi)存地址的變化是不同的。

1、賦值

賦值,只是創(chuàng)建一個(gè)變量,該變量指向原來(lái)內(nèi)存地址,如:

            
n1 = {"k1": "zhangyanlin", "k2": 123, "k3": ["Aylin", 456]}
n2 = n1


          

Python常用知識(shí)點(diǎn)匯總_第2張圖片

2、淺拷貝

淺拷貝,在內(nèi)存中只額外創(chuàng)建第一層數(shù)據(jù)

            
import copy
n1 = {"k1": "zhangyanlin", "k2": 123, "k3": ["aylin", 456]}
n3 = copy.copy(n1)

          

3、深拷貝

深拷貝,在內(nèi)存中將所有的數(shù)據(jù)重新創(chuàng)建一份(排除最后一層,即:python內(nèi)部對(duì)字符串和數(shù)字的優(yōu)化)

Python常用知識(shí)點(diǎn)匯總_第3張圖片

3、函數(shù)

函數(shù)式:將某功能代碼封裝到函數(shù)中,日后便無(wú)需重復(fù)編寫(xiě),僅調(diào)用函數(shù)即可
面向?qū)ο螅簩?duì)函數(shù)進(jìn)行分類(lèi)和封裝,讓開(kāi)發(fā)“更快更好更強(qiáng)...

.函數(shù)的定義主要有如下要點(diǎn):

def:表示函數(shù)的關(guān)鍵字
函數(shù)名:函數(shù)的名稱(chēng),日后根據(jù)函數(shù)名調(diào)用函數(shù)
函數(shù)體:函數(shù)中進(jìn)行一系列的邏輯計(jì)算,如:發(fā)送郵件、計(jì)算出 [11,22,38,888,2]中的最大數(shù)等...
參數(shù):為函數(shù)體提供數(shù)據(jù)
返回值:當(dāng)函數(shù)執(zhí)行完畢后,可以給調(diào)用者返回?cái)?shù)據(jù)。

1、返回值

函數(shù)是一個(gè)功能塊,該功能到底執(zhí)行成功與否,需要通過(guò)返回值來(lái)告知調(diào)用者。

以上要點(diǎn)中,比較重要有參數(shù)和返回值:

            
def 發(fā)送短信():
    
  發(fā)送短信的代碼...
  
  if 發(fā)送成功:
    return True
  else:
    return False
  
  
while True:
    
  # 每次執(zhí)行發(fā)送短信函數(shù),都會(huì)將返回值自動(dòng)賦值給result
  # 之后,可以根據(jù)result來(lái)寫(xiě)日志,或重發(fā)等操作
  
  result = 發(fā)送短信()
  if result == False:
    短信發(fā)送失敗...


          

函數(shù)的有三中不同的參數(shù):

普通參數(shù)

# ######### 定義函數(shù) #########
?
# name 叫做函數(shù)func的形式參數(shù),簡(jiǎn)稱(chēng):形參
def func(name):
??? print name
?
# ######### 執(zhí)行函數(shù) #########
#? 'zhangyanlin' 叫做函數(shù)func的實(shí)際參數(shù),簡(jiǎn)稱(chēng):實(shí)參
func('zhangyanlin')

默認(rèn)參數(shù)

def func(name, age = 18):
????
??? print "%s:%s" %(name,age)
?
# 指定參數(shù)
func('zhangyanlin', 19)
# 使用默認(rèn)參數(shù)
func('nick')

注:默認(rèn)參數(shù)需要放在參數(shù)列表最后

動(dòng)態(tài)參數(shù)

            
def func(*args):
 
  print args

# 執(zhí)行方式一
func(11,33,4,4454,5)
 
# 執(zhí)行方式二
li = [11,2,2,3,3,4,54]
func(*li)
  


          
            
def func(**kwargs):
 
  print args
 
 
# 執(zhí)行方式一
func(name='wupeiqi',age=18)
 
# 執(zhí)行方式二
li = {'name':'wupeiqi', age:18, 'gender':'male'}
func(**li)

          
            
 def func(*args, **kwargs):
 
  print args
  print kwargs

          

郵件實(shí)例:

            
def email(p,j,k):
  import smtplib
  from email.mime.text import MIMEText
  from email.utils import formataddr
 
  set = True
  try:
    msg = MIMEText('j', 'plain', 'utf-8') #j 郵件內(nèi)容
    msg['From'] = formataddr(["武沛齊",'wptawy@126.com'])
    msg['To'] = formataddr(["走人",'424662508@qq.com'])
    msg['Subject'] = "k" #k主題
 
    server = smtplib.SMTP("smtp.126.com", 25)
    server.login("wptawy@126.com", "WW.3945.59")
    server.sendmail('wptawy@126.com', [p], msg.as_string())
    server.quit()
  except:
    set = False
  return True

formmail = input("請(qǐng)你輸入收件人郵箱:")
zhuti  = input("請(qǐng)您輸入郵件主題:")
neirong = input("請(qǐng)您輸入郵件內(nèi)容:")
aa=email(formmail,neirong,zhuti)
if aa:
  print("郵件發(fā)送成功!")
else:
  print("郵件發(fā)送失敗!")

          


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 容城县| 武穴市| 贵港市| 德钦县| 南皮县| 阿克| 大同市| 杭锦旗| 三门县| 阜宁县| 乌鲁木齐市| 溧阳市| 本溪市| 轮台县| 谷城县| 秦皇岛市| 类乌齐县| 文水县| 遂溪县| 临城县| 呼和浩特市| 洛浦县| 丰镇市| 云和县| 二连浩特市| 宾川县| 克拉玛依市| 尉犁县| 东乌| 司法| 吉木乃县| 方正县| 鹿邑县| 巴中市| 项城市| 静乐县| 临西县| 梧州市| 温州市| 通辽市| 漯河市|