<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          零基礎(chǔ)學(xué)Python:一文看懂?dāng)?shù)字和字符串

          共 5892字,需瀏覽 12分鐘

           ·

          2020-10-21 09:54


          導(dǎo)讀:數(shù)據(jù)類型是構(gòu)成編程語言語法的基礎(chǔ)。不同的編程語言有不同的數(shù)據(jù)類型,但都具有常用的幾種數(shù)據(jù)類型。Python有幾種內(nèi)置的數(shù)據(jù)類型——數(shù)字、字符串、元組、列表和字典。本文將重點介紹數(shù)字和字符串。


          作者:黃傳祿 張克強 趙越
          來源:大數(shù)據(jù)DT(ID:hzdashuju)


          01 數(shù)字

          Python3的數(shù)字類型分為整型、浮點型、布爾型、分?jǐn)?shù)類型、復(fù)數(shù)類型。使用Python編寫程序時,不需要聲明變量的類型。由Python內(nèi)置的基本數(shù)據(jù)類型來管理變量,在程序的后臺實現(xiàn)數(shù)值與類型的關(guān)聯(lián),以及類型轉(zhuǎn)換等操作。

          Python與其他高級語言定義變量的方式及內(nèi)部原理有很大的不同。在C或Java中,定義一個整型的變量,可以采用如下方式表示:


          int i = 1;


          在Python中,定義整型變量的表達(dá)方式更簡練。


          i = 1


          Python根據(jù)變量的值自動判斷變量的類型,程序員不需要關(guān)心變量究竟是什么類型,只要知道創(chuàng)建的變量中存放了一個數(shù),以后的工作只是對這個數(shù)值進(jìn)行操作,Python會對這個數(shù)的生命周期負(fù)責(zé)。

          更重要的一點是,C或Java只是創(chuàng)建了一個int型的普通變量;而Python創(chuàng)建的是一個整型對象,并且Python自動完成了整型對象的創(chuàng)建工作,不再需要通過構(gòu)造函數(shù)創(chuàng)建。Python內(nèi)部沒有普通類型,任何類型都是對象。如果C或Java需要修改變量i的值,只要重新賦值即可;而Python并不能修改對象i的值。例如:


          1#下面的兩個i并不是同一個對象?
          2i = 1?
          3print(id(i))?
          4i = 2?
          5print (id(i))


          如果需要查看變量的類型,可以使用Python定義的type類。type是__builtin__模塊的一個類,該類能返回變量的類型或創(chuàng)建一個新的類型。__builtin__模塊是Python的內(nèi)聯(lián)模塊,內(nèi)聯(lián)模塊不需要import語句,由Python解釋器自動導(dǎo)入。后面還會接觸到更多內(nèi)聯(lián)模塊的類和函數(shù)。

          下面這段代碼返回了各種變量的類型。


           1#整型?
          2i = 1?
          3print( type(i))?
          4#長整型?
          5l = 999999999999999999990       # Python何時將int轉(zhuǎn)為float跟操作系統(tǒng)位數(shù)相關(guān)?
          6print type(l)?
          7#浮點型?
          8f = 1.2?
          9 print( type(f))?
          10#布爾型?
          11b = True?
          12print (type(b))


          【代碼說明】


          • 第3行代碼輸出結(jié)果:

          • 第6行代碼輸出結(jié)果:

          • 第9行代碼輸出結(jié)果:

          • 第12行代碼輸出結(jié)果:


          用Python來進(jìn)行科學(xué)計算也很方便,因為Python內(nèi)置了復(fù)數(shù)類型。Java、C#等高級語言則沒有提供復(fù)數(shù)類型。


          1#復(fù)數(shù)類型?
          2c = 7 + 8j?
          3print (type(c))


          第3行代碼輸出結(jié)果:


          注意:復(fù)數(shù)類型的寫法與數(shù)學(xué)中的寫法相同,如果寫為c=7+8i,Python不能識別其中的“i”,將提示語法錯誤。



          02 字符串


          在Python中有3種表示字符串的方式——單引號、雙引號、三引號。單引號和雙引號的作用是一樣的,對于不同的程序員可以根據(jù)自己的習(xí)慣使用單引號或雙引號。PHP程序員可能更習(xí)慣使用單引號表示字符串,C、Java程序員則習(xí)慣使用雙引號表示字符串。下面這段代碼中單引號和雙引號的使用是等價的。


          1# 單引號和雙引號的使用是等價的?
          2str = "hello world!"                    # 定義字符串變量str并賦值?
          3print (str)?
          4str = 'hello world!'?
          5print (str)


          【代碼說明】


          第3行代碼輸出結(jié)果:


          hello world!


          第5行代碼輸出結(jié)果:


          hello world!

          三引號的用法是Python特別的語法,三引號中可以輸入單引號、雙引號或換行等字符。


          1# 三引號的用法?
          2str = '''he say "hello world!"'''?
          3print( str)


          【代碼說明】


          第3行代碼的三引號中帶有雙引號,雙引號也會被輸出。輸出結(jié)果:


          he say "hello world!"


          三引號的另一種用法是制作文檔字符串。Python的每個對象都有一個屬性__doc__,這個屬性用于描述該對象的作用。


          1# 三引號制作doc文檔?
          2class Hello:?
          3'''hello class'''?
          4def printHello():?
          5'''print hello world'''?
          6print ("hello world!")?
          7print( Hello.__doc__)?
          8print (Hello.printHello.__doc__)


          【代碼說明】


          • 第2行代碼定義了一個名為Hello的類。

          • 第3行是對Hello類的描述,該字符串將被存放在類的__doc__屬性中。

          • 第4行代碼定義了一個方法printHello()。

          • 第5行代碼描述了printHello(),并把字符串存放在該函數(shù)的__doc__屬性中。

          • 第6行代碼輸出結(jié)果:


          hello world!


          • 第7行代碼輸出Hello的__doc__屬性的內(nèi)容。輸出結(jié)果:


          hello class


          • 第8行代碼輸出printHello()的__doc__屬性的內(nèi)容。輸出結(jié)果:


          print hello world


          如果要輸出含有特殊字符(單引號、雙引號等)的字符串,需要使用轉(zhuǎn)義字符。Python中轉(zhuǎn)義字符為“\”,和C、Java中的轉(zhuǎn)義字符相同。轉(zhuǎn)義操作只要在特殊字符的前面加上“\”即可。下面這段代碼說明了特殊字符的轉(zhuǎn)義用法。


          1# 轉(zhuǎn)義字符?
          2str = 'he say:\'hello world!\''?
          3print (str)


          【代碼說明】


          第2行代碼中的單引號是特殊字符,需要在“'”前加上轉(zhuǎn)義字符。第3行代碼的輸出結(jié)果:


          he say:'hello world!'


          使用雙引號或三引號可以直接輸出含有特殊字符的字符串,不需要使用轉(zhuǎn)義字符。


          1# 直接輸出特殊字符?
          2str = "he say:'hello world!'"?
          3print (str)?
          4str = '''he say:'hello world!' '''?
          5print (str)


          【代碼說明】


          • 第2行代碼中使用了雙引號表示字符串變量str,因此Python能夠識別出雙引號內(nèi)部的單引號只是作為輸出的字符。

          • 第3行代碼的輸出結(jié)果:


          he say:'hello world!'


          • 第4行代碼使用三引號表示字符串變量str,注意最后一個單引號后面留有一個空格,這個空格是為了讓Python識別出三引號留下的。如果不留下這個空格,4個單引號連在一起,Python解釋器不能正確識別三引號。提示如下錯誤:


          SyntaxError: EOL while scanning single-quoted string


          • 第5行代碼的輸出結(jié)果:


          he say:'hello world!'


          注意:輸出的字符串中含有單引號,使用雙引號表示字符串即可。相反,輸出的字符串中含有雙引號時,可使用單引號表示字符串。


          關(guān)于作者:黃傳祿,高級講師、管理軟件開發(fā)工程師、數(shù)據(jù)庫庫系統(tǒng)工程師、信息系統(tǒng)管理工程師。有10多年的一線教學(xué)經(jīng)驗和高端培訓(xùn)經(jīng)驗,出版多部技術(shù)專著,獲得多個軟件著作權(quán)。


          本文摘編自零基礎(chǔ)學(xué)Python》(第2版),經(jīng)出版方授權(quán)發(fā)布。

          延伸閱讀零基礎(chǔ)學(xué)Python》(第2版)
          點擊上圖了解及購買
          轉(zhuǎn)載請聯(lián)系微信:DoctorData

          推薦語:為了能夠使廣大讀者既能夠掌握Python語言的基礎(chǔ)知識,又能夠?qū)ython語言應(yīng)用于某個特定的領(lǐng)域(如Web開發(fā)),本書介紹了與Python相關(guān)的方方面面,每個章節(jié)都提供了詳盡的例子,結(jié)合實例講解各個知識點。涉及的程序代碼都給出了詳細(xì)的注釋,有助于讀者輕松領(lǐng)會程序開發(fā)的精髓,快速提高開發(fā)技能。



          直播預(yù)告?


          干貨直達(dá)?


          更多精彩?

          在公眾號對話框輸入以下關(guān)鍵詞
          查看更多優(yōu)質(zhì)內(nèi)容!

          PPT | 讀書 | 書單 | 硬核 | 干貨 | 講明白 | 神操作
          大數(shù)據(jù) | 云計算 | 數(shù)據(jù)庫 | Python | 可視化
          AI | 人工智能 | 機器學(xué)習(xí) | 深度學(xué)習(xí) | NLP
          5G | 中臺 | 用戶畫像 1024 | 數(shù)學(xué) | 算法 數(shù)字孿生

          據(jù)統(tǒng)計,99%的大咖都完成了這個神操作
          ?


          瀏覽 12
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  九九九九九国产 | 亚洲午夜福利一区二区三区 | 婷婷视频 | 激情综合自拍偷拍 | 激情综合社区 |