Python自動化開發-變數、資料類型和運算,python資料類型

來源:互聯網
上載者:User

Python自動化開發-變數、資料類型和運算,python資料類型

一、變數

變數定義:Variables are used to store infomation to referrenced and manipulated in a computer program.

用於儲存程式啟動並執行中間運算結果

  • 標識
  • 儲存

變數在程式中用一個變數名表示

  • 變數名必須是大小寫英文、數字和_的組合,且不能用數字開頭
  • 對大小寫敏感
  • 推薦小駝峰命名法,如myFirstName, myLastName
  • 關鍵字不能聲明為變數

在Python中,等號 = 是指派陳述式,可以把任意資料類型賦值給變數,同一個變數可以反覆賦值,而且可以是不同類型的變數

myFisrtName = "Jonathan"

myLastName = "Ni"

 

 

 

請不要把指派陳述式的等號等同於數學的等號。比如下面的代碼:

x = 8

x = x + 2

 

 

 

從數學上理解 x = x + 2 是不成立的。在程式中,指派陳述式先計算右側的運算式x + 2,得到結果10,再賦給變數x。

由於x之前的值是8,重新賦值後,x的值變成10。

 

理解變數在電腦記憶體中的表示非常重要,如以下聲明變數並賦值。

a = "ABC"

 

 

Python解譯器幹了兩件事情:

常量就是不能變的量,通常用全部大寫的變數名表示。  

PI = 3.14159265359

 

 

總結:

在電腦內部,任何資料都看成一個“對象”,而變數就是在程式中用來指向這些資料對象的,對變數賦值就是把資料和變數給關聯起來。

 

二、資料類型

電腦就是可以做數學計算的機器。電腦程式理所當然要處理各種數值。除了數值,電腦還可以處理文本、圖形、音頻、視頻、網頁等

各種資料。不同的資料,需要定義不同的資料類型。

 

1、數字

整數:表示方法和數學上的寫法一樣,如1, -100, 0, 1000等。或16進位表示,0xffffff, 0xabcd等

浮點數:也就是小數,如0.99, -1.25, 88.88等。或者科學計數法表示1.23e8, 1.2e-8等

複數:由實數部分和虛數部分組成,一般形式為 x + yj,如(-5+4j)等

數字沒有大小限制,超出一定範圍就直接表示為inf(無限大)

 

2、字串

字串是以單引號'或雙引號"括起來的任意文本,比如'abc',"XYZ"等等。' 或 " 本身只是一種表示方式,不是字串的一部分,

例如 'abc'只有a,b,c 這3個字元。

如果 ' 本身也是一個字元,那就可以用 "" 括起來,比如 "I'm OK" 包含的字元是I, ', m, 空格, O, K這6個字元。

字串內部既包含 ' 又包含 " 可以用逸出字元 \ 來標識。如'I\'m \"OK\"!',表示I'm "OK"!

逸出字元可以轉義很多字元,比如\n表示換行,\t表示定位字元,\\表示字元\

如果字串內部有很多換行,可用'''.......'''的格式表示多行內容。

 

字串常用功能

  • string.strip([chars]) 方法用於移除字串頭尾指定的字元(預設為空白格)

"  Jonathan     ".strip()     >>>  "Jonathan"

";Jonathan;;".strip(";")    >>>  "Jonathan"

 

 

 

參數:   chars -- 移除字串頭尾指定的字元

傳回值:返回移除字串頭尾指定的字元產生的新字串。原字串保持不變。

  • len(string)方法返回字串長度。
len("Jonathan")   >>>  8

 

參數:   str -- 字串

傳回值:字串長度

  • string.index(str, beg=0, end=len(str))方法檢測字串中是否包含子字串 str

"Jonathan".index("J")      >>>  0

"Jonathan".index("J",1)  >>>  substring not found

"Jonathan".index("an")   >>> 6

 

 

 

 

參數:

str  --  指定檢索的字串

beg -- 開始索引,預設為0

end -- 結束索引,預設為字串的長度

傳回值:如果包含子字串返回開始的索引值,否則拋出異常。

  • 訪問字串中的值

Python 不支援單字元類型,單字元也在Python也是作為一個字串使用。
訪問子字串,可以使用方括弧來截取字串

"Jonathan"[0]      >>> "J"           # 下標從0開始

"Jonathan"[0:3]  >>> "Jon"        # 顧頭不顧尾

"Jonathan"[-1]    >>> "n"          # 倒數第一個

"Jonathan"[-3:-1] >>>"ha"        # 顧頭不顧尾

"Jonathan"[-3:0]    >>>   ""       # 不存在從後往前截取情況

"Jonathan[-3:]       >>>  "han"   # 解譯器識別為從倒數第三個一直到最後全部字元

"Jonathan"[]        >>>   invalid syntax  # 解譯器區分不了到底時單個字元還是區間字元

"Jonathan"[:]      >>>   "Jonathan"         # 解譯器識別為全部字元

"Jonathan"[0:len("Jonathan")]   >>> "Jonathan"

"Jonathan"[-len("Jonathan"):]   >>>  "Jonathan"

"Jonathan"[::-2]   >>>  "Jnta"   # 最後一位表示步長 2

 

 

 

 

 

 

 

 

 

 

 

  • 字串拼接

"Jon" + "nathan"   >>>  "Joanthan"    # 遇 + ,解譯器需重新申請記憶體

 

 

  • 格式化輸出

name = "Jonathan"

print("My name is %s."%(name)   >>> "My name is Jonathan."

 

 

 

3、布爾型

布爾值和布爾代數的表示完全一致,一個布爾值只有True,False兩種值(注意大小寫),布爾值可以用 and、or、not運算

and運算是與運算,只有所有都為True,and運算結果才是True

or運算是或運算,只要其中有一個為True,or運算結果就是True:

not運算是非運算,它是一個單目運算子,把True變成False,False變成True

布爾值經常用在條件判斷中

if age >= 18:

    print("adult")

else:

    print("teenager")

 

 

 

 

 

4、空值

空值是Python裡一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。

 

5、列表

列表是Python中最常用的資料類型,通過列表可以對資料進行最方便的儲存修改等操作

定義列表   names = ["Jon", "Alex", "Tom", "Catherine"]

通過下標訪問列表中的元素,下標從0開始計數

names[0]   >>> "Jon"

names[-1]  >>> "Catherine"

 

 

 

對列表進行操作

names[0] = "Jonathan"   # 修改元素

names.append("Jim")   >>>      ["Jonathan", "Alex", "Tom", "Catherine", "Jim"]    # 在列表最後附件元素

names.insert(2, "Linda")  >>>  ["Jonathan", "Alex", "Linda",  "Tom", "Catherine", "Jim"]     # 在下標為2的地方插入元素,其他元素後移動

names.remove("Linda")   >>>  ["Jonathan", "Alex", "Tom", "Catherine", "Jim"]   # 刪除第一個檢索到的元素

del names[4]    >>>   ["Jonathan", "Alex", "Tom", "Catherine"]   # 按下標刪除元素

names.index("Alex")   >>>  1   # 返回下標

names.sort()    >>> ["Alex", "Catherine", "Jonathan", "Tom"]     #  按照ASCII正序排列

names.reverse()   >>>   ["Tom", "Jonathan", "Catherine", "Alex"]  # 元素反轉

names.count("Tom")   >>>  1  # 返回出現次數

 

 

 

 

 

 

 

 

 

三、運算

1、算術運算

2、比較運算

3、賦值運算

4、邏輯運算

5、成員運算

6、身份運算

7、位元運算

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.