欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解python變量與數(shù)據(jù)類型

 更新時間:2020年08月25日 08:38:12   作者:Python技術  
這篇文章主要介紹了python變量與數(shù)據(jù)類型的相關資料,幫助大家更好的理解和學習python,感興趣的朋友可以了解下

這篇文章我們學習 Python 變量與數(shù)據(jù)類型

變量

變量來源于數(shù)學,是計算機語言中能儲存計算結(jié)果或能表示值抽象概念,變量可以通過變量名訪問。在 Python 中 變量命名規(guī)定,必須是大小寫英文,數(shù)字和 下劃線(_)的組合,并且不能用數(shù)字開頭。

變量命名規(guī)則:

  • 變量名只能是字母,數(shù)字和下劃線的任意組合
  • 變量名第一個字符不能是數(shù)字
  • 變量名區(qū)分大小寫,大小寫字母被認為是兩個不同的字符
  • 特殊關鍵字不能命名為變量名

聲明變量

Python 中的變量不需要聲明,每個變量在使用前都必須賦值,變量賦值以后該變量才會被創(chuàng)建。在 Python 中,變量就是變量,它沒有類型,我們所說的”類型”是變量所指的內(nèi)存中對象的類型。

name = "neo"

上述代碼聲明了一個變量,變量名為:name, 變量 name 的值為”neo”。

變量賦值

在 Python 中,等號 = 是賦值語句,可以把任意數(shù)據(jù)類型賦值給變量,同一個變量可以反復賦值,而且可以是不同類型的變量。

a = 123 # a 是整數(shù)
a = 'abc' # a 是字符串

這種變量本身類型不固定的語言稱之為動態(tài)語言,與之對應的就是靜態(tài)語言。靜態(tài)語言在定義變量時必須指定變量類型,如果賦值的時候類型不匹配,就會報錯。例如 Java 是靜態(tài)語言,這樣賦值就會報錯:

多個變量賦值

Python 允許你同時為多個變量賦值。例如:

a = b = c = 1

以上實例,創(chuàng)建一個整型對象,值為 1,從后向前賦值,三個變量被賦予相同的數(shù)值。

您也可以為多個對象指定多個變量。例如:

a, b, c = 1, 2, "neo"

以上實例,兩個整型對象 1 和 2 的分配給變量 a 和 b,字符串對象 “neo” 分配給變量 c。

常量

所謂常量就是不能變的變量,比如常用的數(shù)學常數(shù) π 就是一個常量。在 Python 中,通常用全部大寫的變量名表示常量:

BI = 3.14

但事實上 BI 仍然是個變量,Python 根本無法保證 BI 不會被改變,所以,用全部大寫的變量名表示常量只是一個習慣上的用法,如果你一定要改,語法也不會報錯。

數(shù)據(jù)類型

Python3 中有六個標準的數(shù)據(jù)類型:Number(數(shù)字)、String(字符串)、List(列表)、Tuple(元組)、Sets(集合)、Dictionary(字典)。

Python3 的六個標準數(shù)據(jù)類型中:

  • 不可變數(shù)據(jù)(3 個):Number(數(shù)字)、String(字符串)、Tuple(元組);
  • 可變數(shù)據(jù)(3 個):List(列表)、Dictionary(字典)、Set(集合)。

下面我們一一介紹這些數(shù)據(jù)類型的使用。

Number(數(shù)字)

Python3 支持 int、float、bool、complex(復數(shù))。

數(shù)字類型是顧名思義是用來存儲數(shù)值的,需要記住的是,有點和 Java 的字符串味道差不多,如果改變了數(shù)字數(shù)據(jù)類型的值,將重新分配內(nèi)存空間。

Python 支持三種不同的數(shù)值類型:

  • 整型(Int) - 通常被稱為是整型或整數(shù),是正或負整數(shù),不帶小數(shù)點。Python3 整型是沒有限制大小的,可以當作 Long 類型使用,所以 Python3 沒有 Python2 的 Long 類型。
  • 浮點型(float) - 浮點型由整數(shù)部分與小數(shù)部分組成,浮點型也可以使用科學計數(shù)法表示(2.5e2 = 2.5 x 102 = 250)
  • 復數(shù)( (complex)) - 復數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,可以用a + bj,或者complex(a,b)表示, 復數(shù)的實部a和虛部b都是浮點型。

示例:

#!/usr/bin/python3
 
counter = 100     # 整型變量
miles  = 1000.0    # 浮點型變量
name  = "test"   # 字符串
 
print (counter)
print (miles)
print (name)

數(shù)字類型轉(zhuǎn)換

  • int(x) 將x轉(zhuǎn)換為一個整數(shù)。
  • float(x) 將x轉(zhuǎn)換到一個浮點數(shù)。
  • complex(x) 將x轉(zhuǎn)換到一個復數(shù),實數(shù)部分為 x,虛數(shù)部分為 0。
  • complex(x, y) 將 x 和 y 轉(zhuǎn)換到一個復數(shù),實數(shù)部分為 x,虛數(shù)部分為 y。x 和 y 是數(shù)字表達式。 額外說明

和別的語言一樣,數(shù)字類型支持各種常見的運算,不過 Python 的運算比別的大多數(shù)常見語言都更加豐富,此外,還有大量豐富的方法,提供更高效的開發(fā)。

數(shù)值運算示例:

print (5 + 4) # 加法  輸出 9
print (4.3 - 2) # 減法  輸出 2.3
print (3 * 7) # 乘法 輸出 21
print (2 / 4) # 除法,得到一個浮點數(shù)  輸出 0.5
print (2 // 4) # 除法,得到一個整數(shù) 輸出 0
print (17 % 3) # 取余  輸出 2
print (2 ** 5) # 乘方 輸出 32

String(字符串)

創(chuàng)建字符串可以使用單引號、雙引號、三單引號和三雙引號,其中三引號可以多行定義字符串,Python 不支持單字符類型,單字符也在Python也是作為一個字符串使用。

我們定義一個 s='python'語句,它在計算機中的執(zhí)行順序是先在內(nèi)存中創(chuàng)建一個字符串 Python ,在程序棧寄存器中創(chuàng)建一個變量 s,最后把 Python 的地址賦給s 。

再來看看字符串的一些常見操作:

s = '學習Python'
# 切片
s[0], s[-1], s[3:], s[::-1]	# '優(yōu)', 'n', 'Python', 'nohtyP的雅優(yōu)'
# 替換,還可以使用正則表達式替換
s.replace('Python', 'Java')	# '學習Java'
# 查找,find()、index()、rfind()、rindex()
s.find('P')			# 3, 返回第一次出現(xiàn)的子串的下標
s.find('h', 2)			# 6, 設定下標2開始查找
s.find('23333')			# -1, 查找不到返回-1
s.index('y')			# 4, 返回第一次出現(xiàn)的子串的下標
s.index('P')		# 不同與find(), 查找不到會拋出異常
# 轉(zhuǎn)大小寫, upper()、lower()、swapcase()、capitalize()、istitle()、isupper()、islower()
s.upper()			# '學習PYTHON'
s.swapcase()			# '學習pYTHON', 大小寫互換
s.istitle()			# True
s.islower()			# False
# 去空格,strip()、lstrip()、rstrip()
# 格式化
s1 = '%s %s' % ('Windrivder', 21)	# 'Windrivder 21' 
s2 = '{}, {}'.format(21, 'Windridver')	# 推薦使用format格式化字符串
s3 = '{0}, {1}, {0}'.format('Windrivder', 21)
s4 = '{name}: {age}'.format(age=21, name='Windrivder')
# 連接與分割,使用 + 連接字符串,每次操作會重新計算、開辟、釋放內(nèi)存,效率很低,所以推薦使用join
l = ['2017', '03', '29', '22:00']
s5 = '-'.join(l)			# '2017-03-29-22:00'
s6 = s5.split('-')			# ['2017', '03', '29', '22:00']

以上是一些常見的操作。

另外還有一點需要注意的是字符串編碼,所有的 Python 字符串都是 Unicode 字符串,當需要將文件保存到外設或進行網(wǎng)絡傳輸時,就要進行編碼轉(zhuǎn)換,將字符轉(zhuǎn)換為字節(jié),以提高效率。

# encode 將字符轉(zhuǎn)換為字節(jié)
str = '學習Python'   
print (str.encode())			# 默認編碼是 UTF-8 輸出:b'\xe5\xad\xa6\xe4\xb9\xa0Python'
print (str.encode('gbk'))   # 輸出 b'\xd1\xa7\xcf\xb0Python'
# decode 將字節(jié)轉(zhuǎn)換為字符
print (str.encode().decode('utf8'))  # 輸出 '學習Python'
print (str.encode('gbk').decode('gbk'))       # 輸出 '學習Python'

List(列表)

類似 Java List 集合接口

列表是寫在方括號 [] 之間、用逗號分隔開的元素列表,列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)。列表中元素的類型可以不相同,它支持數(shù)字,字符串甚至可以包含列表(所謂嵌套),列表中的元素是可以改變。

示例:

Weekday = ['Monday','Tuesday','Wednesday','Thursday','Friday']
print(Weekday[0])  # 輸出 Monday

#list 搜索
print(Weekday.index("Wednesday"))

#list 增加元素
Weekday.append("new")
print(Weekday)

# list 刪除
Weekday.remove("Thursday") 
print(Weekday)

Tuple(元組)

元組(tuple)與列表類似,不同之處在于元組的元素不能修改。元組寫在小括號 () 里,元素之間用逗號隔開,組中的元素類型也可以不相同。

示例:

letters = ('a','b','c','d','e','f','g')
print(letters[0]) # 輸出 'a'
print(letters[0:3]) # 輸出一組 ('a', 'b', 'c')

Sets(集合)

類似 Java Set 集合接口

集合(set)是一個無序不重復元素的序列,使用大括號 {} 或者 set() 函數(shù)創(chuàng)建集合,注意:創(chuàng)建一個空集合必須用 set() 而不是 {} ,因為 {} 是用來創(chuàng)建一個空字典。

集合不能被切片也不能被索引,除了做集合運算之外,集合元素可以被添加還有刪除:

示例:

a_set = {1,2,3,4}
# 添加
a_set.add(5)
print(a_set) # 輸出{1, 2, 3, 4, 5}
# 刪除
a_set.discard(5)
print(a_set) # 輸出{1, 2, 3, 4}

Dictionary(字典)

類似 Java Map 集合接口

字典是一種映射類型,它的元素是鍵值對,字典的關鍵字必須為不可變類型,且不能重復。創(chuàng)建空字典使用 {} 。

示例:

Logo_code = {
 'BIDU':'Baidu',
 'SINA':'Sina',
 'YOKU':'Youku'
 }
print(Logo_code)
# 輸出{'BIDU': 'Baidu', 'YOKU': 'Youku', 'SINA': 'Sina'}
print (Logo_code['SINA'])    # 輸出鍵為 'one' 的值
print (Logo_code.keys())  # 輸出所有鍵
print (Logo_code.values()) # 輸出所有值
print (len(Logo_code)) # 輸出字段長度

總結(jié)

本節(jié)給大家介紹了 Python 變量 和六種標準的數(shù)據(jù)類型,給大家演示了變量的使用,以及六個六種標準的數(shù)據(jù)類型的常用操作。

示例代碼:Python-100-days-day003

以上就是詳解python變量與數(shù)據(jù)類型的詳細內(nèi)容,更多關于python變量與數(shù)據(jù)類型的資料請關注腳本之家其它相關文章!

相關文章

  • python實現(xiàn)跨進程(跨py文件)通信示例

    python實現(xiàn)跨進程(跨py文件)通信示例

    本文主要介紹了python實現(xiàn)跨進程(跨py文件)通信示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python實例解析圖像形態(tài)學運算技術

    Python實例解析圖像形態(tài)學運算技術

    形態(tài)學處理方法是基于對二進制圖像進行處理的,卷積核決定圖像處理后的效果。本文將為大家詳細介紹一下OpenCV中的圖像形態(tài)學,感興趣的可以了解一下
    2022-03-03
  • pip安裝指定版本的tensorflow的實現(xiàn)

    pip安裝指定版本的tensorflow的實現(xiàn)

    本文介紹了如何使用pip安裝指定版本的TensorFlow,包括CPU版本和GPU版本的安裝方法,同時,文中也提到了使用阿里國內(nèi)鏡像源加速下載的方法,以及在安裝GPU版本時需要檢查CUDA和cuDNN的兼容性的注意事項,感興趣的可以了解一下
    2024-10-10
  • python刪除指定列或多列單個或多個內(nèi)容實例

    python刪除指定列或多列單個或多個內(nèi)容實例

    這篇文章主要介紹了python刪除指定列或多列單個或多個內(nèi)容實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python數(shù)據(jù)結(jié)構(gòu)算法分析

    python數(shù)據(jù)結(jié)構(gòu)算法分析

    這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)算法分析,在python的數(shù)據(jù)結(jié)構(gòu)的章節(jié)中,我們上次學習到了python面向?qū)ο蟮乃枷?,即我們想用程序來實現(xiàn)一個東西,我們需是用對象的特征來描述我們想構(gòu)建的對象。感興趣的小伙伴可以查看下面內(nèi)容</P><P>
    2021-12-12
  • python實時監(jiān)控cpu小工具

    python實時監(jiān)控cpu小工具

    這篇文章主要為大家詳細介紹了python實時監(jiān)控cpu的小工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • python保存兩位小數(shù)的多種方法匯總

    python保存兩位小數(shù)的多種方法匯總

    很多小伙伴在學習python的時候可能會遇到對數(shù)據(jù)進行格式化輸出的需求,其中最常見的需求為:保留幾位小數(shù),下面這篇文章主要給大家介紹了關于python保存兩位小數(shù)的多種方法,需要的朋友可以參考下
    2021-12-12
  • 利用python如何處理nc數(shù)據(jù)詳解

    利用python如何處理nc數(shù)據(jù)詳解

    目前很多數(shù)據(jù)以nc格式存儲,下面這篇文章主要給大家介紹了關于利用python如何處理nc數(shù)據(jù)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值。需要的朋友們下面來一起看看吧
    2018-05-05
  • VSCode中autopep8無法運行問題解決方案(提示Error: Command failed,usage)

    VSCode中autopep8無法運行問題解決方案(提示Error: Command failed,usage)

    這篇文章主要介紹了VSCode中autopep8無法運行問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • python3.7添加dlib模塊的方法

    python3.7添加dlib模塊的方法

    這篇文章主要介紹了python3.7添加dlib模塊的方法,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07

最新評論