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

Python常見數(shù)據(jù)類型處理詳細代碼示例

 更新時間:2025年04月25日 09:26:54   作者:ha_lydms  
這篇文章主要介紹了Python常見數(shù)據(jù)類型處理的相關資料,包括Number、String、bool、List、Tuple、Set和Dictionary,每種數(shù)據(jù)類型都有其特定的用途和操作方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

一、數(shù)據(jù)類型分類

Python3 中常見的數(shù)據(jù)類型有:

  • Number(數(shù)字)
  • String(字符串)
  • bool(布爾類型)
  • List(列表)
  • Tuple(元組)
  • Set(集合)
  • Dictionary(字典)

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

  • 不可變數(shù)據(jù)(3 個): Number(數(shù)字)、String(字符串)、Tuple(元組);

  • 可變數(shù)據(jù)(3 個): List(列表)、Dictionary(字典)、Set(集合)。

  • 基本

    • Number(數(shù)字)
    • String(字符串)
  • 多字段

    • List(列表)
    • Tuple(元組)
    • Dictionary(字典)
    • Set(集合)
#	List(列表)
my_list = [0, 1, 2, 3, 4, 5, 6, 7, 8]

# Tuple(元組)(值不能修改)
my_tuple = (1, 2, 3, 4)

# Dictionary(字典)
my_info = {'name': '張三', 'age': 18, 'address': '北京市'}

# Set(集合)
set01 = {1, 2, 3, 4} 

二、基本數(shù)據(jù)類型

1、Number(數(shù)字)

  • Python3 支持 int、float、bool、complex(復數(shù))
  • 在Python 3里,只有一種整數(shù)類型 int,表示為長整型,沒有 python2 中的 Long。
  • 像大多數(shù)語言一樣,數(shù)值類型的賦值和計算都是很直觀的。
  • 內(nèi)置的type()函數(shù)可以用來查詢變量所指的對象類型。
  • Python可以同時為多個變量賦值,如a, b = 1, 2。
  • 一個變量可以通過賦值指向不同類型的對象。
  • 數(shù)值的除法包含兩個運算符:/ 返回一個浮點數(shù),// 返回一個整數(shù)。
  • 在混合計算時,Python會把整型轉(zhuǎn)換成為浮點數(shù)
>>> 5 + 4  # 加法
9
>>> 4.3 - 2 # 減法
2.3
>>> 3 * 7  # 乘法
21
>>> 2 / 4  # 除法,得到一個浮點數(shù)
0.5
>>> 2 // 4 # 除法,得到一個整數(shù)
0
>>> 17 % 3 # 取余 
2
>>> 2 ** 5 # 乘方
32

2、String(字符串)

  • 反斜杠可以用來轉(zhuǎn)義,使用r可以讓反斜杠不發(fā)生轉(zhuǎn)義。
  • 字符串可以用+運算符連接在一起,用*運算符重復。
  • Python中的字符串有兩種索引方式,從左往右以0開始,從右往左以-1開始。
  • Python中的字符串不能改變。
print(str[0:-1])     # 打印字符串第一個到倒數(shù)第二個字符(不包含倒數(shù)第一個字符)
print(str[0])        # 打印字符串的第一個字符
print(str[2:5])      # 打印字符串第三到第五個字符(包含第五個字符)
print(str[2:])       # 打印字符串從第三個字符開始到末尾

str_01 = 'my name is:{}, age:{}'
print(str_01.format('張三', 18))

str_02 = 'my name is:{name}, age:{age}'
print(str_02.format(name='張三', age=18))

str_03 = 'my name is:{name}, age:{age}'
print(str_03.format_map({'name': '張三', 'age': 18}))

Python 使用反斜杠\ 轉(zhuǎn)義特殊字符,如果你不想讓反斜杠發(fā)生轉(zhuǎn)義,可以在字符串前面添加一個r,表示原始字符串:

print('Ru\noob')
Ru
oob
print(r'Ru\noob')
Ru\noob

encode()、decode()方法

  • encode() 方法以指定的編碼格式編碼字符串。errors參數(shù)可以指定不同的錯誤處理方案。
  • decode() 方法以指定的編碼格式解碼 bytes 對象。默認編碼為 ‘utf-8’。
  • 該方法返回編碼后的字符串,它是一個 bytes 對象。
str.encode(encoding='UTF-8',errors='strict')
bytes.decode(encoding="utf-8", errors="strict")
  • encoding – 要使用的編碼,如: UTF-8。
  • errors – 設置不同錯誤的處理方案。默認為 ‘strict’,意為編碼錯誤引起一個UnicodeError。 其他可能得值有 ‘ignore’, ‘replace’, ‘xmlcharrefreplace’, ‘backslashreplace’ 以及通過 codecs.register_error() 注冊的任何值。
#!/usr/bin/python3

str = "菜鳥教程"
str_utf8 = str.encode("UTF-8", 'strict')
str_gbk = str.encode("GBK")

print("UTF-8 編碼:", str_utf8)
print("GBK 編碼:", str_gbk)

print("UTF-8 解碼:", str_utf8.decode('UTF-8'))
print("GBK 解碼:", str_gbk.decode('GBK', 'strict'))

結果:

UTF-8 編碼: b'\xe8\x8f\x9c\xe9\xb8\x9f\xe6\x95\x99\xe7\xa8\x8b'
GBK 編碼: b'\xb2\xcb\xc4\xf1\xbd\xcc\xb3\xcc'
UTF-8 解碼: 菜鳥教程
GBK 解碼: 菜鳥教程

3.2 format格式化字符串

# 1、
print('{}網(wǎng)址: "{}!"'.format('菜鳥教程', 'www.runoob.com'))
# 2、
print('{name}網(wǎng)址: {site}'.format(name='菜鳥教程', site='www.runoob.com'))

# 3、
print('{0} 和 {1}'.format('Google', 'Runoob'))
# 可以任意組合
print('站點列表 {0}, {1}, 和 {other}。'.format('Google', 'Runoob', other='Taobao'))

# 4、
table = {'Google': 1, 'Runoob': 2, 'Taobao': 3}
print('Runoob: {0[Runoob]:d}; Google: {0[Google]:d}; Taobao: {0[Taobao]:d}'.format(table))

3、Bool(布爾類型)

布爾類型即 True 或 False。

在 Python 中,True 和 False 都是關鍵字,表示布爾值。

布爾類型可以用來控制程序的流程,比如判斷某個條件是否成立,或者在某個條件滿足時執(zhí)行某段代碼。

布爾類型特點:

  • 布爾類型只有兩個值:True 和 False。
  • 布爾類型可以和其他數(shù)據(jù)類型進行比較,比如數(shù)字、字符串等。在比較時,Python 會將 True 視為 1,F(xiàn)alse 視為 0。
  • 布爾類型可以和邏輯運算符一起使用,包括 and、or 和 not。這些運算符可以用來組合多個布爾表達式,生成一個新的布爾值。
  • 布爾類型也可以被轉(zhuǎn)換成其他數(shù)據(jù)類型,比如整數(shù)、浮點數(shù)和字符串。在轉(zhuǎn)換時,True 會被轉(zhuǎn)換成 1,F(xiàn)alse 會被轉(zhuǎn)換成 0。
a = True
b = False

# 比較運算符
print(2 < 3)   # True
print(2 == 3)  # False

# 邏輯運算符
print(a and b)  # False
print(a or b)   # True
print(not a)    # False

# 類型轉(zhuǎn)換
print(int(a))   # 1
print(float(b)) # 0.0
print(str(a))   # "True"

Python3 中,bool是 int 的子類,TrueFalse可以和數(shù)字相加,True==1、False==0會返回True,但可以通過is來判斷類型。

a1 = True
print(type(a1))
print(a1 + 100)

<class 'bool'>
101

4、Bytes

字符串轉(zhuǎn)為Bytes

# 解析為bytes:b'Hello,World'
print('Hello,World'.encode())

Bytes轉(zhuǎn)為字符串

# 創(chuàng)建一個bytes對象
bytes_data = b'Hello, World!'

# b'Hello, World!'
print(bytes_data)

# 將bytes對象轉(zhuǎn)換為字符串
string_data = bytes_data.decode('utf-8')
print(string_data)

三、多值存儲

1、List(列表)

增、刪、改、查:

my_list = [0, 1, 2, 3, 4, 5, 6, 7, 8]
# 1、增
my_list.append('333')
# 將另一個集合中添加到列表中
insert_list = [1, 23]
my_list.extend(insert_list)
# 指定位置前插入元素
my_list.insert(2, '34')

# 2、刪
my_list.remove()

# 3、改
my_list[1] = '張三'

# 4、查
# 查看是否存在于集合中
print('張三' in my_list)
# 查詢所在索引
my_list.index('張三')
my_list.index('張三', 1, 4)
# 查詢數(shù)量
my_list.count('張三')

其它

# 循環(huán)
for one in my_list:
    # print(one)
    print(one, end='==')
    print(one, end='==\n%%% ')

# 排序
# 排序-正序
my_list.sort()
# 排序-倒敘
my_list.sort(reverse=True)

函數(shù)內(nèi)置方法

方法序號
list.append(obj)在列表末尾添加新的對象
list.count(obj)統(tǒng)計某個元素在列表中出現(xiàn)的次數(shù)
list.extend(seq)在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)
list.index(obj)從列表中找出某個值第一個匹配項的索引位置
list.insert(index, obj)將對象插入列表
list.pop([index=-1\])移除列表中的一個元素(默認最后一個元素),并且返回該元素的值
list.remove(obj)移除列表中某個值的第一個匹配項
list.reverse()反向列表中元素
list.sort( key=None, reverse=False)對原列表進行排序
list.clear()清空列表
list.copy()復制列表

2、Tuple(元組)

Python的元組與列表類似,不同之處在于元組的元素不能修改。

# tuple元組
my_tuple = (1, 2, 3, 4)

# 查-某個值
print(my_tuple[1])

# 查—查詢所在索引位置(前閉右開區(qū)間)(起始索引:0)
print(my_tuple.index(2, 1, 3))
# 查-某值數(shù)量
print(my_tuple.count(1))

Python元組包含了以下內(nèi)置函數(shù)

函數(shù)方法及描述實例
len(tuple)計算元組元素個數(shù)>>> tuple1 = ('Google', 'Runoob', 'Taobao')
max(tuple)返回元組中元素最大值max(tuple2)
min(tuple)返回元組中元素最小值min(tuple2)
tuple(iterable)將可迭代系列轉(zhuǎn)換為元組tuple1=tuple(['Google', 'Taobao', 'Runoob', 'Baidu'])

3、Dictionary(字典)

增刪改查

my_info = {'name': '張三', 'age': 18, 'address': '北京市'}
# 1、查詢元素
# 查-查詢單個(無值異常)
print(my_info['name'])
print(my_info['age'])
# 查-查詢單個(無值返回 None)
print(my_info.get('name1'))
# 查-查詢單個(無值返回 指定值)
print(my_info.get('name2', '李四'))

# 2、修改元素
my_info['name'] = '王五'

# 3、添加元素
# 添加元素-鍵不存在則添加
my_info['id'] = 1234

# 4、刪除元素
# 刪除元素-刪除單個元素
del my_info['id']
# 刪除-刪除字典(查詢會報錯
del my_info
# 刪除—清空字段(值為{})
my_info.clear()

其它API

# 5、其它API
# 測量字典中,鍵值對的個數(shù)
print(len(my_info))

# 返回一個包含字典所有KEY的列表
print(my_info.keys())

# 返回一個包含字典所有value的列表
print(my_info.values())

# 返回一個包含所有(鍵,值)元祖的列表
print(my_info.items())
方法函數(shù)及描述
dict.clear()刪除字典內(nèi)所有元素
dict.copy()返回一個字典的淺復制
dict.fromkeys()創(chuàng)建一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值
dict.get(key, default=None)返回指定鍵的值,如果鍵不在字典中返回 default 設置的默認值
key in dict如果鍵在字典dict里返回true,否則返回false
dict.items()以列表返回一個視圖對象
dict.keys()返回一個視圖對象
dict.setdefault(key, default=None)類似, 但如果鍵不存在于字典中,將會添加鍵并將值設為default
dict.update(dict2)把字典dict2的鍵/值對更新到dict里
dict.values()返回一個視圖對象
pop(key[,default\])刪除字典 key(鍵)所對應的值,返回被刪除的值。
popitem()返回并刪除字典中的最后一對鍵和值。

4、Set(集合)

  • 集合(set)是一個無序的不重復元素序列。
  • 集合中的元素不會重復,并且可以進行交集、并集、差集等常見的集合操作。
  • 可以使用大括號 { } 創(chuàng)建集合,元素之間用逗號 , 分隔, 或者也可以使用 set() 函數(shù)創(chuàng)建集合。
# 0、創(chuàng)建集合
set01 = {1, 2, 3, 4}            # 直接使用大括號創(chuàng)建集合
set02 = set([4, 5, 6, 7])      # 使用 set() 函數(shù)從列表創(chuàng)建集合

# 1、增
# 1-1 將元素 x 添加到集合 s 中,如果元素已存在,則不進行任何操作。
set01.add(100)
# 1-2 添加元素,且參數(shù)可以是列表,元組,字典等
set01.update([1, 2, ])

# 2、刪
# 2-1 將元素 x 從集合 s 中移除,如果元素不存在,則會發(fā)生錯誤
set01.remove(1)
# 2-2 移除集合中的元素,且如果元素不存在,不會發(fā)生錯誤
set01.discard(1)
# 2-3 隨機刪除集合中的一個元素
s.pop() 

# 3、其它
# 判斷元素是否在集合內(nèi)(False)
print('1' in set03)
# 計算集合元素個數(shù)
print(len(set01))
# 清空集合
set01.clear()

集合內(nèi)置方法完整列表

方法描述
add()為集合添加元素
clear()移除集合中的所有元素
copy()拷貝一個集合
difference()返回多個集合的差集
difference_update()移除集合中的元素,該元素在指定的集合也存在。
discard()刪除集合中指定的元素
intersection()返回集合的交集
intersection_update()返回集合的交集。
isdisjoint()判斷兩個集合是否包含相同的元素,如果沒有返回 True,否則返回 False。
issubset()判斷指定集合是否為該方法參數(shù)集合的子集。
issuperset()判斷該方法的參數(shù)集合是否為指定集合的子集
pop()隨機移除元素
remove()移除指定元素
symmetric_difference()返回兩個集合中不重復的元素集合。
symmetric_difference_update()移除當前集合中在另外一個指定集合相同的元素,并將另外一個指定集合中不同的元素插入到當前集合中。
union()返回兩個集合的并集
update()給集合添加元素
len()計算集合元素個數(shù)

四、其它

1、Json

方法作用返回類型
eval(字符串表達式)eval() 函數(shù)用來執(zhí)行一個【字符串表達式】,并返回表達式的值。list、dict、tuple
json.dumps()將python對象編碼成Json字符串返回json字符串
json.loads()將Json字符串解碼成python對象返回python對象
json.dump()將python中的對象轉(zhuǎn)化成json儲存到文件中無返回
json.load()將文件中的json的格式轉(zhuǎn)化成python對象提取出來返回python對象

五、其它函數(shù)

1、print()

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
  • objects :復數(shù),表示可以一次輸出多個對象。輸出多個對象時,需要用 , 分隔。
  • sep :用來間隔多個對象,默認值是一個空格。
  • end :用來設定以什么結尾。默認值是換行符 \n,我們可以換成其他字符串。
  • file :要寫入的文件對象。
  • flush :輸出是否被緩存通常決定于 file,但如果 flush 關鍵字參數(shù)為 True,流會被強制刷新。
# 1 2 3 4 5
print('1', '2', '3', '4', '5')
# 1+2+3
print('1', '2', '3', sep='+')
# 1++2++3==
print('1', '2', '3', sep='++', end='==')

總結 

到此這篇關于Python常見數(shù)據(jù)類型處理的文章就介紹到這了,更多相關Python數(shù)據(jù)類型處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Django路由Path方法的實現(xiàn)

    Django路由Path方法的實現(xiàn)

    本文主要介紹了Django路由Path方法的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • python使用線程封裝的一個簡單定時器類實例

    python使用線程封裝的一個簡單定時器類實例

    這篇文章主要介紹了python使用線程封裝的一個簡單定時器類,實例分析了Python線程的使用及定時器類的實現(xiàn)技巧,需要的朋友可以參考下
    2015-05-05
  • pyppeteer執(zhí)行js繞過webdriver監(jiān)測方法下

    pyppeteer執(zhí)行js繞過webdriver監(jiān)測方法下

    這篇文章主要為大家介紹了pyppeteer上執(zhí)行js并繞過webdriver監(jiān)測常見方法的上篇,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • 詳解如何利用Python裝飾器優(yōu)化代碼

    詳解如何利用Python裝飾器優(yōu)化代碼

    這篇文章主要帶大家深入探討裝飾器的應用,包括計時器裝飾器和緩存裝飾器等的實現(xiàn),文中的示例代碼講解詳細,需要的小伙伴可以參考下
    2023-05-05
  • 簡單談談python基本數(shù)據(jù)類型

    簡單談談python基本數(shù)據(jù)類型

    在Python中,能夠直接處理的數(shù)據(jù)類型有以下幾種:#整型 int,#浮點型 float,#布爾型 bool,#復數(shù)型 (在python中用小寫 j ,表示虛部,用其他的字母不行)complex
    2018-09-09
  • Win10系統(tǒng)下安裝labelme及json文件批量轉(zhuǎn)化方法

    Win10系統(tǒng)下安裝labelme及json文件批量轉(zhuǎn)化方法

    這篇文章主要介紹了Win10系統(tǒng)下安裝labelme及json文件批量轉(zhuǎn)化的方法,文中較詳細的給大家介紹了安裝過程 ,需要的朋友可以參考下
    2019-07-07
  • 淺談Python 遞歸算法指歸

    淺談Python 遞歸算法指歸

    這篇文章主要介紹了淺談Python 遞歸算法指歸,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Python實現(xiàn)歷史記錄功能(實際案例)

    Python實現(xiàn)歷史記錄功能(實際案例)

    很多應用程序都有瀏覽用戶的歷史記錄的功能,瀏覽器可以查看最近訪問過的網(wǎng)頁,現(xiàn)在我們制作了一個簡單的猜數(shù)字的小游戲,添加歷史記錄功能,顯示用戶最近猜過的數(shù)字,如何實現(xiàn)呢?跟隨小編一起看看吧
    2022-04-04
  • python3 自動打印出最新版本執(zhí)行的mysql2redis實例

    python3 自動打印出最新版本執(zhí)行的mysql2redis實例

    這篇文章主要介紹了python3 自動打印出最新版本執(zhí)行的mysql2redis實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python基于SMTP發(fā)送郵件的方法

    Python基于SMTP發(fā)送郵件的方法

    這篇文章主要介紹了Python基于SMTP 發(fā)送郵件的方法,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下
    2021-03-03

最新評論