Python數(shù)據(jù)類型相互轉(zhuǎn)換
當(dāng)涉及數(shù)據(jù)類型轉(zhuǎn)換時(shí),Python提供了多種內(nèi)置函數(shù)來執(zhí)行不同類型之間的轉(zhuǎn)換
以下是每個(gè)方法的詳細(xì)說明和示例案例
- 整數(shù)和浮點(diǎn)數(shù)轉(zhuǎn)換:
int(x, base=10): 將給定的參數(shù)x轉(zhuǎn)換為整數(shù)。x可以是一個(gè)整數(shù)、浮點(diǎn)數(shù)或字符串。如果x是字符串,則可以提供base參數(shù)指定字符串的進(jìn)制,默認(rèn)為十進(jìn)制
# 示例案例 - int()
num_int = int(42.8) # 輸出:42,將浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù),小數(shù)部分被截?cái)?
num_int_base = int('1010', 2) # 輸出:10,將二進(jìn)制字符串轉(zhuǎn)換為整數(shù)float(x): 將給定的參數(shù)x轉(zhuǎn)換為浮點(diǎn)數(shù)。x可以是一個(gè)整數(shù)、浮點(diǎn)數(shù)或字符串
# 示例案例 - float()
num_float = float(42) # 輸出:42.0,將整數(shù)轉(zhuǎn)換為浮點(diǎn)數(shù)
num_float_str = float('3.14') # 輸出:3.14,將字符串轉(zhuǎn)換為浮點(diǎn)數(shù)- 字符串和整數(shù)/浮點(diǎn)數(shù)轉(zhuǎn)換:
int(s, base=10): 將字符串s轉(zhuǎn)換為整數(shù)。base參數(shù)用于指定字符串的進(jìn)制(默認(rèn)為十進(jìn)制)
# 示例案例 - int() str_num = "123" num_int = int(str_num) # 輸出:123,將字符串轉(zhuǎn)換為整數(shù) str_hex = "1A" num_hex = int(str_hex, 16) # 輸出:26,將十六進(jìn)制字符串轉(zhuǎn)換為整數(shù)
float(s): 將字符串s轉(zhuǎn)換為浮點(diǎn)數(shù)。
# 示例案例 - float() str_float = "3.14" num_float = float(str_float) # 輸出:3.14,將字符串轉(zhuǎn)換為浮點(diǎn)數(shù)
- 列表、元組和集合轉(zhuǎn)換:
list(iterable): 將可迭代對(duì)象iterable(如列表、元組等)轉(zhuǎn)換為列表
# 示例案例 - list()
tuple_data = (1, 2, 3)
list_data = list(tuple_data) # 輸出:[1, 2, 3],將元組轉(zhuǎn)換為列表
set_data = {4, 5, 6}
list_data_from_set = list(set_data) # 輸出:[4, 5, 6],將集合轉(zhuǎn)換為列表tuple(iterable): 將可迭代對(duì)象iterable轉(zhuǎn)換為元組
# 示例案例 - tuple() list_data = [1, 2, 3] tuple_data = tuple(list_data) # 輸出:(1, 2, 3),將列表轉(zhuǎn)換為元組
set(iterable): 將可迭代對(duì)象iterable轉(zhuǎn)換為集合,去除重復(fù)項(xiàng)
# 示例案例 - set()
list_data = [1, 2, 2, 3, 3, 3]
set_data = set(list_data) # 輸出:{1, 2, 3},將列表轉(zhuǎn)換為集合并去除重復(fù)項(xiàng)- 字符串和字節(jié)轉(zhuǎn)換:
str.encode(encoding='utf-8', errors='strict'): 將字符串轉(zhuǎn)換為字節(jié)對(duì)象,使用指定的字符編碼(默認(rèn)為UTF-8)
# 示例案例 - str.encode()
str_data = "Hello, World!"
bytes_data = str_data.encode('utf-8') # 輸出:b'Hello, World!',將字符串轉(zhuǎn)換為字節(jié)對(duì)象bytes.decode(encoding='utf-8', errors='strict'): 將字節(jié)對(duì)象轉(zhuǎn)換為字符串,使用指定的字符編碼(默認(rèn)為UTF-8)
# 示例案例 - bytes.decode()
bytes_data = b'Hello, World!'
str_data = bytes_data.decode('utf-8') # 輸出:"Hello, World!",將字節(jié)對(duì)象轉(zhuǎn)換為字符串- 布爾值轉(zhuǎn)換:
bool(x): 將給定的參數(shù)x轉(zhuǎn)換為布爾值。任何非零整數(shù)、非空容器(如非空字符串、非空列表等)都將轉(zhuǎn)換為True,而零整數(shù)、空容器(如空字符串、空列表等)將轉(zhuǎn)換為False
# 示例案例 - bool() num = 42 bool_value = bool(num) # 輸出:True,將非零整數(shù)轉(zhuǎn)換為布爾值 empty_list = [] bool_value = bool(empty_list) # 輸出:False,將空列表轉(zhuǎn)換為布爾值
- 其他數(shù)據(jù)類型轉(zhuǎn)換:
eval(expression, globals=None, locals=None): 將字符串expression作為Python表達(dá)式進(jìn)行求值,并返回結(jié)果。這個(gè)方法可能會(huì)帶來潛在的安全風(fēng)險(xiǎn),因?yàn)樗梢詧?zhí)行任意的Python代碼。謹(jǐn)慎使用,尤其是當(dāng)字符串來自不受信任的來源時(shí)
# 示例案例 - eval() str_list = "[1, 2, 3]" list_data = eval(str_list) # 輸出:[1, 2, 3],將字符串作為Python表達(dá)式求值并轉(zhuǎn)換為列表
ast.literal_eval(node_or_string): 將字符串node_or_string安全地解析為Python字面值表達(dá)式,返回對(duì)應(yīng)的Python對(duì)象。這個(gè)方法用于安全地將字符串轉(zhuǎn)換為Python對(duì)象,避免了eval()方法的潛在安全問題
import ast
# 示例案例 - ast.literal_eval()
str_dict = "{'name': 'John', 'age': 30}"
dict_data = ast.literal_eval(str_dict) # 輸出:{'name': 'John', 'age': 30},安全地將字符串轉(zhuǎn)換為字典以上是常見的Python數(shù)據(jù)類型轉(zhuǎn)換方法。在進(jìn)行數(shù)據(jù)處理和用戶輸入處理時(shí),務(wù)必選擇合適的轉(zhuǎn)換方式,以避免潛在的錯(cuò)誤
到此這篇關(guān)于Python數(shù)據(jù)類型相互轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)Python數(shù)據(jù)類型轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 詳解Python中數(shù)據(jù)類型的轉(zhuǎn)換
- Python數(shù)據(jù)類型轉(zhuǎn)換實(shí)現(xiàn)方法
- Python變量和數(shù)據(jù)類型和數(shù)據(jù)類型的轉(zhuǎn)換
- python輸入、數(shù)據(jù)類型轉(zhuǎn)換及運(yùn)算符方式
- 詳解Python數(shù)據(jù)類型、進(jìn)制轉(zhuǎn)換、字符串格式化的問題
- Python 轉(zhuǎn)換數(shù)據(jù)類型函數(shù)和轉(zhuǎn)換數(shù)據(jù)類型的作用
- Python數(shù)據(jù)類型轉(zhuǎn)換匯總
- Python數(shù)據(jù)類型轉(zhuǎn)換詳解
- python 數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換的總結(jié)
- Python如何實(shí)現(xiàn)強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換
- Python常用數(shù)據(jù)類型之間的轉(zhuǎn)換總結(jié)
相關(guān)文章
python中scikit-learn機(jī)器代碼實(shí)例
這篇文章給大家分享了關(guān)于python中scikit-learn機(jī)器的代碼實(shí)例內(nèi)容,有興趣的朋友跟著小編測(cè)試下。2018-08-08
Python 爬蟲之超鏈接 url中含有中文出錯(cuò)及解決辦法
這篇文章主要介紹了Python 爬蟲之超鏈接 url中含有中文出錯(cuò)及解決辦法的相關(guān)資料,出現(xiàn)UnicodeEncodeError: 'ascii' codec can't encode characters,的錯(cuò)誤解決辦法,需要的朋友可以參考下2017-08-08
使用Python的Flask框架表單插件Flask-WTF實(shí)現(xiàn)Web登錄驗(yàn)證
Flask處理表單除了本身的WTForms包,使用Flask-WTF擴(kuò)展來增強(qiáng)表單功能也是很多開發(fā)者的選擇,這里我們就來講解如何使用Python的Flask框架表單插件Flask-WTF實(shí)現(xiàn)Web登錄驗(yàn)證2016-07-07
Python實(shí)現(xiàn)特定場(chǎng)景去除高光算法詳解
這篇文章主要介紹了如何利用Python+OpenCV實(shí)現(xiàn)特定場(chǎng)景去除高光算法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下2021-12-12
Python?Pandas刪除替換并提取其中的缺失值NaN(dropna,fillna,isnull)
這篇文章主要給大家介紹了關(guān)于Python?Pandas刪除替換并提取其中的缺失值NaN(dropna,fillna,isnull)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Pandas具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-01-01
Pycharm鼠標(biāo)光標(biāo)切換實(shí)現(xiàn)方式
文章介紹了在使用Windows 10時(shí),如果光標(biāo)變成特殊形狀(如箭頭帶有一個(gè)問號(hào)),可以通過點(diǎn)擊鍵盤上的Insert鍵來切換回正常光標(biāo),此外,還介紹了如何使用快捷鍵(Win+Shift+S)來截取屏幕2026-01-01
Python實(shí)現(xiàn)GUI學(xué)生管理系統(tǒng)的示例代碼
這篇文章主要為大家介紹了如何留Python語言實(shí)現(xiàn)簡(jiǎn)易的GUI學(xué)生管理系統(tǒng),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考下2022-06-06
Tensorflow 自定義loss的情況下初始化部分變量方式
今天小編就為大家分享一篇Tensorflow 自定義loss的情況下初始化部分變量方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01

