您好,登錄后才能下訂單哦!
本篇內容主要講解“如何理解Python數字和字符串”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何理解Python數字和字符串”吧!
01 數字
Python3的數字類型分為整型、浮點型、布爾型、分數類型、復數類型。使用Python編寫程序時,不需要聲明變量的類型。由Python內置的基本數據類型來管理變量,在程序的后臺實現數值與類型的關聯,以及類型轉換等操作。
Python與其他高級語言定義變量的方式及內部原理有很大的不同。在C或Java中,定義一個整型的變量,可以采用如下方式表示:
int i = 1;
在Python中,定義整型變量的表達方式更簡練。
i = 1
Python根據變量的值自動判斷變量的類型,程序員不需要關心變量究竟是什么類型,只要知道創建的變量中存放了一個數,以后的工作只是對這個數值進行操作,Python會對這個數的生命周期負責。
更重要的一點是,C或Java只是創建了一個int型的普通變量;而Python創建的是一個整型對象,并且Python自動完成了整型對象的創建工作,不再需要通過構造函數創建。Python內部沒有普通類型,任何類型都是對象。如果C或Java需要修改變量i的值,只要重新賦值即可;而Python并不能修改對象i的值。例如:
1#下面的兩個i并不是同一個對象? 2i = 1? 3print(id(i))? 4i = 2? 5print (id(i))
如果需要查看變量的類型,可以使用Python定義的type類。type是__builtin__模塊的一個類,該類能返回變量的類型或創建一個新的類型。__builtin__模塊是Python的內聯模塊,內聯模塊不需要import語句,由Python解釋器自動導入。后面還會接觸到更多內聯模塊的類和函數。
下面這段代碼返回了各種變量的類型。
1#整型? 2i = 1? 3print( type(i))? 4#長整型? 5l = 999999999999999999990 # Python何時將int轉為float跟操作系統位數相關? 6print type(l)? 7#浮點型? 8f = 1.2? 9 print( type(f))? 10#布爾型? 11b = True? 12print (type(b))
【代碼說明】
第3行代碼輸出結果:<class'int'>
第6行代碼輸出結果:<class'int'>
第9行代碼輸出結果:<class'float'>
第12行代碼輸出結果:<class'bool'>
用Python來進行科學計算也很方便,因為Python內置了復數類型。Java、C#等高級語言則沒有提供復數類型。
1#復數類型? 2c = 7 + 8j? 3print (type(c))
第3行代碼輸出結果:<class'complex'>
注意:復數類型的寫法與數學中的寫法相同,如果寫為c=7+8i,Python不能識別其中的“i”,將提示語法錯誤。
02 字符串
在Python中有3種表示字符串的方式——單引號、雙引號、三引號。單引號和雙引號的作用是一樣的,對于不同的程序員可以根據自己的習慣使用單引號或雙引號。PHP程序員可能更習慣使用單引號表示字符串,C、Java程序員則習慣使用雙引號表示字符串。下面這段代碼中單引號和雙引號的使用是等價的。
1# 單引號和雙引號的使用是等價的? 2str = "hello world!" # 定義字符串變量str并賦值? 3print (str)? 4str = 'hello world!'? 5print (str)
【代碼說明】
第3行代碼輸出結果:
hello world!
第5行代碼輸出結果:
hello world!
三引號的用法是Python特別的語法,三引號中可以輸入單引號、雙引號或換行等字符。
1# 三引號的用法? 2str = '''he say "hello world!"'''? 3print( str)
【代碼說明】
第3行代碼的三引號中帶有雙引號,雙引號也會被輸出。輸出結果:
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(),并把字符串存放在該函數的__doc__屬性中。
第6行代碼輸出結果:
hello world!
第7行代碼輸出Hello的__doc__屬性的內容。輸出結果:
hello class
第8行代碼輸出printHello()的__doc__屬性的內容。輸出結果:
print hello world
如果要輸出含有特殊字符(單引號、雙引號等)的字符串,需要使用轉義字符。Python中轉義字符為“\”,和C、Java中的轉義字符相同。轉義操作只要在特殊字符的前面加上“\”即可。下面這段代碼說明了特殊字符的轉義用法。
1# 轉義字符? 2str = 'he say:\'hello world!\''? 3print (str)
【代碼說明】
第2行代碼中的單引號是特殊字符,需要在“'”前加上轉義字符。第3行代碼的輸出結果:
he say:'hello world!'
使用雙引號或三引號可以直接輸出含有特殊字符的字符串,不需要使用轉義字符。
1# 直接輸出特殊字符? 2str = "he say:'hello world!'"? 3print (str)? 4str = '''he say:'hello world!' '''? 5print (str)
【代碼說明】
第2行代碼中使用了雙引號表示字符串變量str,因此Python能夠識別出雙引號內部的單引號只是作為輸出的字符。
第3行代碼的輸出結果:
he say:'hello world!'
第4行代碼使用三引號表示字符串變量str,注意最后一個單引號后面留有一個空格,這個空格是為了讓Python識別出三引號留下的。如果不留下這個空格,4個單引號連在一起,Python解釋器不能正確識別三引號。提示如下錯誤:
SyntaxError: EOL while scanning single-quoted string
第5行代碼的輸出結果:
he say:'hello world!'
注意:輸出的字符串中含有單引號,使用雙引號表示字符串即可。相反,輸出的字符串中含有雙引號時,可使用單引號表示字符串。
到此,相信大家對“如何理解Python數字和字符串”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。