成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

零基礎學Python:一文看懂數字和字符串

開發 后端
Python有幾種內置的數據類型——數字、字符串、元組、列表和字典。本文將重點介紹數字和字符串。

 

01 數字

Python3的數字類型分為整型、浮點型、布爾型、分數類型、復數類型。使用Python編寫程序時,不需要聲明變量的類型。由Python內置的基本數據類型來管理變量,在程序的后臺實現數值與類型的關聯,以及類型轉換等操作。

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

  1. int i = 1

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

  1. i = 1 

Python根據變量的值自動判斷變量的類型,程序員不需要關心變量究竟是什么類型,只要知道創建的變量中存放了一個數,以后的工作只是對這個數值進行操作,Python會對這個數的生命周期負責。

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

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

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

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

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

【代碼說明】

  •  第3行代碼輸出結果:<class'int'>
  •  第6行代碼輸出結果:<class'int'>
  •  第9行代碼輸出結果:<class'float'>
  •  第12行代碼輸出結果:<class'bool'>

用Python來進行科學計算也很方便,因為Python內置了復數類型。Java、C#等高級語言則沒有提供復數類型。 

  1. 1#復數類型  
  2. 2c = 7 + 8j  
  3. 3print (type(c)) 

第3行代碼輸出結果:<class'complex'>

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

02 字符串

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

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

【代碼說明】

第3行代碼輸出結果:

  1. hello world! 

第5行代碼輸出結果: 

  1. hello world! 

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

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

【代碼說明】

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

  1. he say "hello world!" 

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

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

【代碼說明】

  •  第2行代碼定義了一個名為Hello的類。
  •  第3行是對Hello類的描述,該字符串將被存放在類的__doc__屬性中。
  •  第4行代碼定義了一個方法printHello()。
  •  第5行代碼描述了printHello(),并把字符串存放在該函數的__doc__屬性中。
  •  第6行代碼輸出結果: 
  1. hello world! 
  •  第7行代碼輸出Hello的__doc__屬性的內容。輸出結果: 
  1. hello class 
  •  第8行代碼輸出printHello()的__doc__屬性的內容。輸出結果: 
  1. print hello world 

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

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

【代碼說明】

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

  1. he say:'hello world!' 

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

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

【代碼說明】

  •  第2行代碼中使用了雙引號表示字符串變量str,因此Python能夠識別出雙引號內部的單引號只是作為輸出的字符。
  •  第3行代碼的輸出結果: 
  1. he say:'hello world!' 
  •  第4行代碼使用三引號表示字符串變量str,注意最后一個單引號后面留有一個空格,這個空格是為了讓Python識別出三引號留下的。如果不留下這個空格,4個單引號連在一起,Python解釋器不能正確識別三引號。提示如下錯誤: 
  1. SyntaxError: EOL while scanning single-quoted string 
  •  第5行代碼的輸出結果: 
  1. he say:'hello world!' 

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

關于作者:黃傳祿,高級講師、管理軟件開發工程師、數據庫庫系統工程師、信息系統管理工程師。有10多年的一線教學經驗和高端培訓經驗,出版多部技術專著,獲得多個軟件著作權。

本文摘編自《零基礎學Python》(第2版),經出版方授權發布。 

 

責任編輯:龐桂玉 來源: 大數據DT
相關推薦

2018-08-31 14:51:30

人工智能深度學習機器學習

2020-11-23 09:46:18

Java方法權限

2022-03-29 08:02:01

數字孿生能源程序

2020-03-31 14:40:24

HashMap源碼Java

2023-07-07 11:36:29

人工智能基礎模型

2019-05-22 09:50:42

Python沙箱逃逸網絡攻擊

2020-11-20 09:36:43

Java對象

2016-08-18 00:21:12

網絡爬蟲抓取網絡

2021-01-13 14:55:54

JavaPython開發

2025-02-27 08:05:47

2024-04-23 14:02:48

Python數據類型字符串

2017-07-28 09:11:14

HIVEHBASE區別

2024-08-12 12:30:27

2025-01-20 09:15:00

iOS 18.3蘋果iOS 18

2021-08-02 06:56:19

TypeScript編程語言編譯器

2016-11-25 13:05:18

2019-07-01 09:22:15

Linux操作系統硬件

2018-02-02 11:17:42

IaaSPaaSSaaS

2021-07-05 00:00:55

TomcatNginxApache

2019-07-09 10:14:04

云計算行業科技
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美精品久久久久久久久老牛影院 | 久久成人精品 | www.亚洲免费 | 精品久久久久一区二区国产 | 色爱综合 | 国产欧美视频一区二区三区 | 日本久久久久久 | 午夜激情在线 | 日韩精品免费视频 | 全免费a级毛片免费看视频免费下 | 国产日韩精品一区二区 | 成人国产免费视频 | 欧美人妇做爰xxxⅹ性高电影 | 国产亚洲成av人在线观看导航 | 免费一区| 欧洲亚洲一区 | 精品无码久久久久国产 | 一区二区在线免费观看 | 国产网站在线免费观看 | 亚洲国产精品视频 | 久久精品手机视频 | 久久99精品久久久久子伦 | 在线视频一区二区 | 国产精品久久av | 91精品免费视频 | 天天看夜夜 | 91精品国产高清久久久久久久久 | 亚洲国产精品一区二区久久 | 亚洲欧美日韩在线 | 日韩在线成人 | www.日韩欧美 | 国产999精品久久久久久 | 精品中文字幕一区二区 | 99热热| 天天爱综合 | av男人的天堂av | 免费在线观看一级毛片 | 亚洲综合热| 男女国产网站 | 亚洲免费精品 | 99视频免费在线观看 |