在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python基礎知識點(二)

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-04-01 17:03 ? 次閱讀

默認參數最好不為可變對象

函數的參數分三種

可變參數

默認參數

關鍵字參數

這三者的具體區別,和使用方法在 廖雪峰的教程 里會詳細的解釋。這里就不搬運了。

今天要說的是,傳遞默認參數時,新手很容易踩雷的一個坑。

先來看一個示例

deffunc(item,item_list=[]):
item_list.append(item)
print(item_list)

func('iphone')
func('xiaomi',item_list=['oppo','vivo'])
func('huawei')

在這里,你可以暫停一下,思考一下會輸出什么?

思考過后,你的答案是否和下面的一致呢

['iphone']
['oppo','vivo','xiaomi']
['iphone','huawei']

如果是,那你可以跳過這部分內容,如果不是,請接著往下看,這里來分析一下。

Python 中的 def 語句在每次執行的時候都初始化一個函數對象,這個函數對象就是我們要調用的函數,可以把它當成一個一般的對象,只不過這個對象擁有一個可執行的方法和部分屬性。

對于參數中提供了初始值的參數,由于 Python 中的函數參數傳遞的是對象,也可以認為是傳地址,在第一次初始化 def 的時候,會先生成這個可變對象的內存地址,然后將這個默認參數 item_list 會與這個內存地址綁定。

在后面的函數調用中,如果調用方指定了新的默認值,就會將原來的默認值覆蓋。如果調用方沒有指定新的默認值,那就會使用原來的默認值。

訪問類中的私有方法

大家都知道,類中可供直接調用的方法,只有公有方法(protected類型的方法也可以,但是不建議)。也就是說,類的私有方法是無法直接調用的。

這里先看一下例子

classKls():
defpublic(self):
print('Hellopublicworld!')

def__private(self):
print('Helloprivateworld!')

defcall_private(self):
self.__private()

ins=Kls()

#調用公有方法,沒問題
ins.public()

#直接調用私有方法,不行
ins.__private()

#但你可以通過內部公有方法,進行代理
ins.call_private()

既然都是方法,那我們真的沒有方法可以直接調用嗎?

當然有啦,只是建議你千萬不要這樣弄,這里只是普及,讓你了解一下。

#調用私有方法,以下兩種等價
ins._Kls__private()
ins.call_private()

時有時無的切片異常

這是個簡單例子

my_list=[1,2,3,4,5]
print(my_list[5])

執行一下,和我們預期的一樣,會拋出索引異常。

Traceback(mostrecentcalllast):
File"F:/PythonScript/test.py",line2,in
print(my_list[5])
IndexError:listindexoutofrange

但是今天要說的肯定不是這個,而是一個你可能會不知道的冷知識。

來看看,如下這種寫法就不會報索引異常,執行my_list[5:],會返回一個新list:[]。

my_list=[1,2,3]
print(my_list[5:])

哪些情況下不需要續行符

在寫代碼時,為了代碼的可讀性,代碼的排版是尤為重要的。

為了實現高可讀性的代碼,我們常常使用到的就是續行符\

>>>a='talkischeap,'\
...'showmethecode.'
>>>
>>>print(a)
talkischeap,showmethecode.

那有哪些情況下,是不需要寫續行符的呢?

經過總結,在這些符號中間的代碼換行可以省略掉續行符:[],(),{}

>>>my_list=[1,2,3,
...4,5,6]

>>>my_tuple=(1,2,3,
...4,5,6)

>>>my_dict={"name":"MING",
..."gender":"male"}

另外還有,在多行文本注釋中''',續行符也是可以不寫的。

>>>text='''talkischeap,
...showmethecode'''

上面只舉了一些簡單的例子。

但你要學會舉一反三。一樣的,在以下這些場景也同樣適用

類,和函數的定義。

列表推導式,字典推導式,集合推導式,生成器表達式。

Py2 也可以使用 print()

我相信應該有不少人,思維定式,覺得只有 Py3 才可以使用 print(),而 Py2 只能使用print ''。

今天,小明要為 Py2 正名一次。

在Python 2.6之前,只支持

print"hello"

在Python 2.6和2.7中,可以支持如下三種

print"hello"
print("hello")
print("hello")

Python3.x中,可以支持如下兩種

print("hello")
print("hello")


審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 參數
    +關注

    關注

    11

    文章

    1867

    瀏覽量

    32913
  • python
    +關注

    關注

    56

    文章

    4825

    瀏覽量

    86370
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    跟老齊學Python:從入門到精通

    本帖最后由 yuu_cool 于 2025-6-3 16:52 編輯 本資料是面向編程零基礎讀者的Python 入門教程,內容涵蓋了Python基礎知識和初步應用。以比較輕快的風格,向零基
    發表于 06-03 16:10

    電機選型計算公式與知識點匯總

    純分享帖,需要者可點擊附件獲取完整資料~~~*附件:電機選型計算公式與知識點匯總.pdf 【免責聲明】內容轉自今日電機,因轉載眾多,無法確認真正原始作者,故僅標明轉載來源。版權歸原出處所有,純分享帖,侵權請聯系刪除內容以保證您的權益。
    發表于 04-29 16:10

    效果器的基礎知識

    電子發燒友網站提供《效果器的基礎知識.doc》資料免費下載
    發表于 03-26 14:30 ?4次下載

    電氣工程師必知必會的100個電?知識點分享

    電??程師也都是從電?學徒??步?步積累成長起來的。積跬步?千?,匯細流成江海!朋友們,現在讓我們??個捷徑,花半個?時的時間來積累100個必知必會的電?知識點吧!
    的頭像 發表于 03-14 11:05 ?854次閱讀

    華邦電子安全閃存關鍵知識點

    黑客攻擊?高溫考驗?駕駛安全?通通沒在怕的!1月15日,華邦電子舉辦了“安全閃存強化車用電子安全性”為主題的線上研討會。為了讓沒能參加這場線上研討會的邦友們也可以清晰 Get 安全閃存關鍵知識點,邦
    的頭像 發表于 02-12 18:15 ?713次閱讀

    PCB繪制基礎知識

    電子發燒友網站提供《PCB繪制基礎知識.pdf》資料免費下載
    發表于 01-21 15:20 ?6次下載
    PCB繪制<b class='flag-5'>基礎知識</b>

    Aigtek功率放大器應用:電感線圈的知識點分享

    電磁驅動是功率放大器的一大基礎應用領域,其中我們最常見的就是用功放來驅動電感線圈,那么關于電感線圈的這10大知識點你都知道嗎?今天Aigtek安泰電子來給大家介紹一下電感線圈的基礎知識
    的頭像 發表于 01-07 15:43 ?520次閱讀
    Aigtek功率放大器應用:電感線圈的<b class='flag-5'>知識點</b>分享

    EMC基礎知識-華為

    EMC基礎知識-華為
    發表于 01-06 14:09 ?2次下載

    后悔沒有早點看到:天線設計中的知識點

    Cat.1 bis R13架構,天線架構精簡為單天線架構,去掉了分集接收天線,因此只需要一根天線。 ? 知識點: Cat.1 bis相對于Cat.1的區別是,后者為兩根天線(一根主天線,一根分集天線
    的頭像 發表于 12-24 17:11 ?1030次閱讀
    后悔沒有早點看到:天線設計中的<b class='flag-5'>知識點</b>!

    硬件工程師面試基礎知識點

    皮爾斯振蕩器(Pierce oscillator) 上圖中,U1為增益很大的反相放大器,CL1、CL2為匹配電容,是電容三式電路的分壓電容,接地點就是分壓。以接地點即分壓為參考點,輸入和輸出是反相的,但從并聯諧振回路即石英
    的頭像 發表于 11-21 11:04 ?695次閱讀
    硬件工程師面試<b class='flag-5'>基礎知識點</b>

    接口測試理論、疑問收錄與擴展相關知識點

    本文章使用王者榮耀游戲接口、企業微信接口的展示結合理論知識,講解什么是接口測試、接口測試理論、疑問收錄與擴展相關知識點知識學院,快來一起看看吧~
    的頭像 發表于 11-15 09:12 ?691次閱讀
    接口測試理論、疑問收錄與擴展相關<b class='flag-5'>知識點</b>

    品質管理基礎知識

    品質管理基礎知識
    的頭像 發表于 11-01 11:08 ?628次閱讀
    品質管理<b class='flag-5'>基礎知識</b>

    Verilog HDL的基礎知識

    本文繼續介紹Verilog HDL基礎知識,重點介紹賦值語句、阻塞與非阻塞、循環語句、同步與異步、函數與任務語法知識
    的頭像 發表于 10-24 15:00 ?1114次閱讀
    Verilog HDL的<b class='flag-5'>基礎知識</b>

    負載開關基礎知識

    電子發燒友網站提供《負載開關基礎知識.pdf》資料免費下載
    發表于 10-08 09:56 ?2次下載
    負載開關<b class='flag-5'>基礎知識</b>

    C++語言基礎知識

    電子發燒友網站提供《C++語言基礎知識.pdf》資料免費下載
    發表于 07-19 10:58 ?8次下載
    主站蜘蛛池模板: 日日噜噜夜夜狠狠久久丁香 | 婷婷网址| 韩国三级久久精品 | 免费一级毛片女人图片 | www亚洲欲色成人久久精品 | 91成人免费福利网站在线 | 黄色aaa大片| 免费日本网站 | 色一区二区 | 性夜影院爽黄a爽在线看香蕉 | 国产日本久久久久久久久婷婷 | 国产色婷婷精品综合在线 | 男子扒开美女尿口做羞羞的事 | 欧美激情xxxx性bbbb | 天天色天天做 | 嫩草影院www| 欧美三级不卡在线观线看高清 | 俄罗斯毛片基地 | 婷婷综合五月天 | 狠狠做深爱婷婷综合一区 | 欧美在线观看www | 欧美一级片网址 | 丁香亚洲综合五月天婷婷 | 欧美xxxx做受欧美88bbw | 真实偷清晰对白在线视频 | 四虎永久免费影院在线 | 天天综合天天做天天综合 | 国产午夜毛片一区二区三区 | 欧美影欧美影院免费观看视频 | 一区二区三区高清视频在线观看 | 国久久| 交专区videossex另类 | 亚洲成a人片7777 | 久久精品国产6699国产精 | 白嫩少妇激情无码 | 亚洲午夜网未来影院 | 免费一级特黄 欧美大片 | 久久精品人人爽人人爽快 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 | 手机看片1024日韩 | 激情性爽三级成人 |