最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

python 零基礎(chǔ)入門教程第 2 章:基本數(shù)據(jù)類型 (一)

2020-09-30 16:13 作者:軟件測(cè)試檸檬班Pro  | 我要投稿

一、什么是數(shù)據(jù)類型

編程語言通過一些復(fù)雜的計(jì)算機(jī)物理底層機(jī)制,創(chuàng)造不同類型的數(shù)據(jù),用來表示現(xiàn)實(shí)世界中的不同信息,以便于計(jì)算機(jī)更好的存儲(chǔ)和計(jì)算。

每種編程語言都會(huì)有一些基本的數(shù)據(jù)類型用來表示現(xiàn)實(shí)世界中的常見信息。

Python 中的常見數(shù)據(jù)類型如下

數(shù)值類型

序列類型

散列類型

其他類型

二、數(shù)值類型

1. 整數(shù)類型(int)

python 中整數(shù)類型用 int 表示,與數(shù)學(xué)中的整數(shù)概念一致

age = 18

其中 age 是變量名,= 是賦值運(yùn)算符,18 是值。

上面的代碼表示創(chuàng)建一個(gè)整數(shù) 18 然后賦值給變量 age。

1.變量

在程序運(yùn)行過程中會(huì)有一些中間值,在稍后的執(zhí)行中會(huì)用到,這時(shí)可以將這些中間值賦值給變量,然后在后面的代碼中通過調(diào)用這些變量名來獲取這些值。可以簡單的理解為給這些值取一個(gè)別名,這個(gè)別名就代表這個(gè)值。

變量的命名規(guī)則:

  1. 由大小寫字母 A-Za-z,數(shù)字 0-9 和下劃線 _ 組成

  2. 不能以數(shù)字開頭

  3. 不能是關(guān)鍵字

  4. 變量名大小寫敏感

# 正確的案例lucky_num = 88lucky_num2 = 888
# 錯(cuò)誤的案例1lucky_num = 88
# 上面的age 和 Age是兩個(gè)不同的變量Age = 19

python 官方占用了一些變量名作為程序的關(guān)鍵字,總共 35 個(gè),這些關(guān)鍵字不能作為自定義變量名使用。

import keywordprint(keyword.kwlist)

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

2.賦值運(yùn)算符

在 python 中 = 是賦值運(yùn)算符,而不是數(shù)學(xué)意義上的等于號(hào)。python 解釋器會(huì)先計(jì)算 = 右邊的表達(dá)式,然后將結(jié)果復(fù)制給 = 左邊的變量。

res = 1 ? ? ? ? ? # 定義變量res賦值為1res = res + 1 ? ? # 先計(jì)算res + 1 再賦值給變量resres ? ? ? ? ? ? ? # res的值為2

運(yùn)行結(jié)果:

2

3.type 函數(shù)和 print 函數(shù)

python 提供了內(nèi)建函數(shù) type 用來查看值或者變量的類型。

只需要將變量或者值作為參數(shù)傳入 type 函數(shù)即可。

type(age)

運(yùn)行結(jié)果

int

type(18)

運(yùn)行結(jié)果:

int

print 函數(shù)用來在屏幕上輸出傳入的數(shù)據(jù)的字符串表現(xiàn)形式,是代碼調(diào)試最重要的函數(shù)。

print(age)print(type(age))# 注意交互式輸出和print函數(shù)輸出的區(qū)別

運(yùn)行結(jié)果:

18
<class 'int'>

4.整數(shù)的常見表示形式

在 python 中整數(shù)最常見的是 10 進(jìn)制整數(shù),也有二進(jìn)制,八進(jìn)制和十六進(jìn)制。

a = 10 ?# 十進(jìn)制print('a的類型為:', type(a), a)

a 的類型為: <class 'int'> 10

b = 0b1110 ?# 二進(jìn)制print('b的類型為:', type(b),b)

b 的類型為: <class 'int'> 14

c = 0o57 ? ?# 八進(jìn)制print('c的類型為:', type(c),c)

c 的類型為: <class 'int'> 47

d = 0xa5c ? # 十六進(jìn)制print('d的類型為:', type(d), d)

d 的類型為: <class 'int'> 2652

5.整數(shù)的取值范圍

python 中整數(shù)類型的理論取值范圍是[-無窮,無窮],實(shí)際取值范圍受限于運(yùn)行 python 程序的計(jì)算機(jī)內(nèi)存大小。

2. 浮點(diǎn)數(shù)類型(float)

python 中浮點(diǎn)數(shù)數(shù)用 float 表示,與數(shù)學(xué)中的實(shí)數(shù)概念一致,也可以理解為有小數(shù)。

a = 0.0print('a的類型為:', type(a))

a 的類型為: <class 'float'>

1.浮點(diǎn)數(shù)的表現(xiàn)形式

在 python 中浮點(diǎn)數(shù)可以表示為 a.b 的格式,也可以表示為小寫或大寫 E 的科學(xué)計(jì)算法。例如:

a = 0.0print('a的類型為:', type(a))

a 的類型為: <class 'float'>

# 小數(shù)部分為零可以省略不寫b = 76.print('b的類型為:', type(b))

b 的類型為: <class 'float'>

c = -3.1415926print('c的類型為:', type(c))

c 的類型為: <class 'float'>

d = 9.5e-2print('d的類型為:', type(d))

d 的類型為: <class 'float'>

思考:

浮點(diǎn)數(shù)可以表示所有的整數(shù)數(shù)值,python 為何要同時(shí)提供兩種數(shù)據(jù)類型?

相同的操作整數(shù)要比浮點(diǎn)數(shù)快5-20倍

2.數(shù)學(xué)運(yùn)算符

與數(shù)學(xué)中的常用運(yùn)算符一致

注意一個(gè)浮點(diǎn)數(shù)和一個(gè)整數(shù)進(jìn)行運(yùn)算后的結(jié)果一定為浮點(diǎn)數(shù)

2+1.0

3.0

9/3 # 除法運(yùn)算的結(jié)果一定為float類型

3.0

9//2 # 地板除,向下取整

4

3.組合賦值運(yùn)算符

賦值運(yùn)算符與算術(shù)運(yùn)算符可以組合使用,注意算術(shù)運(yùn)算符要寫在前面且中間不能有空格。

體現(xiàn)了程序員的"懶惰",這種懶惰大力提倡,使得代碼簡潔和高效。

a = 1a += 2 ?# ?a = a+2a

3

4. 浮點(diǎn)數(shù)的不精確性

整數(shù)和浮點(diǎn)數(shù)在計(jì)算機(jī)中的表示不同,python 提供無限制且準(zhǔn)確的整數(shù)計(jì)算,浮點(diǎn)數(shù)卻是不精確的,例如:

0.2+0.1

0.30000000000000004
根據(jù) sys.float_info.dig 的值,計(jì)算機(jī)只能提供 15 個(gè)數(shù)字的準(zhǔn)確性。浮點(diǎn)數(shù)在超過 15 位數(shù)字計(jì)算中產(chǎn)生的誤差與計(jì)算機(jī)內(nèi)部采用二進(jìn)制運(yùn)算有關(guān)。

import sysprint(sys.float_info.dig)

15

思考:

3.1415926535897924*1.23456789 的計(jì)算怎么準(zhǔn)確

拓展:高精度浮點(diǎn)運(yùn)算類型

import decimala = decimal.Decimal('3.141952653')b = decimal.Decimal('1.23456789')print(a * b)

3.87895385729411217

5. 浮點(diǎn)數(shù)和整數(shù)的相互轉(zhuǎn)化

int,float 是 python 的內(nèi)置函數(shù),通過它們可以對(duì)浮點(diǎn)數(shù)類型和整數(shù)類型相互轉(zhuǎn)化

a = 1.9# 轉(zhuǎn)化為整數(shù)# 通過調(diào)用int函數(shù),提取浮點(diǎn)數(shù)的整數(shù)部分b = int(a)print(b, type(b))

1 <class 'int'>

c = 2# 轉(zhuǎn)化為浮點(diǎn)數(shù)# 通過調(diào)用float函數(shù),將整數(shù)轉(zhuǎn)化為小數(shù)部分為0的浮點(diǎn)數(shù)d = float(c)print(d, type(d))

2.0 <class 'float'>

3.復(fù)數(shù)

科學(xué)計(jì)算中的復(fù)數(shù)。

a = 12.3+4jprint('a的類型為:', type(a))# 運(yùn)行結(jié)果:a的類型為: <class 'complex'>print(a.real)print(a.imag)

a 的類型為: <class 'complex'>
12.3
4.0

聲明:本文作者為檸檬班心藍(lán)老師,轉(zhuǎn)載請(qǐng)注明出處!

python 零基礎(chǔ)入門教程第 2 章:基本數(shù)據(jù)類型 (一)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
靖安县| 衢州市| 都兰县| 六枝特区| 绥江县| 亚东县| 高陵县| 韩城市| 新建县| 儋州市| 巴南区| 景德镇市| 平乐县| 米脂县| 定安县| 南溪县| 沂源县| 嘉禾县| 泸州市| 义乌市| 枝江市| 伊川县| 修水县| 建阳市| 莒南县| 全椒县| 九江县| 永丰县| 蒲江县| 吉隆县| 比如县| 台安县| 南宁市| 潜江市| 溧水县| 巍山| 石狮市| 大名县| 怀宁县| 额济纳旗| 民权县|