在Python中字符串、列表、元組、字典之間的相互轉(zhuǎn)換
一、字符串(str)
字符串轉(zhuǎn)換為列表
使用list()方法
str_1 = "1235" str_2 = 'zhangsan' str_3 = '''lisi''' tuple_1 = list(str_1) tuple_2 = list(str_2) tuple_3 = list(str_3) print(type(tuple_1)) print(type(tuple_2)) print(type(tuple_3)) print(tuple_1) print(tuple_2) print(tuple_3)
運行結(jié)果:

使用Python中字符串的內(nèi)置方法split()
Python split() 通過指定分隔符對字符串進行切片,如果參數(shù) num 有指定值,則分隔 num+1 個子字符串
語法:str.split(str="", num=string.count(str)).
①str – 分隔符,默認為所有的空字符,包括空格、換行(\n)、制表符(\t)等。
②num – 分割次數(shù)。默認為 -1, 即分隔所有。
str_1 = "12 35 213"
str_2 = 'zhang san shi a '
str_3 = 'zhang san shi a '
str_4 = '''li si wang wu'''
list_1 = str_1.split(" ")
list_2 = str_2.split(" ",1)
list_3 = str_3.split(" ")
list_4 = str_4.split(" ",2)
print(type(list_1))
print(type(list_2))
print(type(list_3))
print(type(list_4))
print(list_1)
print(list_2)
print(list_3)
print(list_4)
運行結(jié)果:

字符串 轉(zhuǎn)換為 元組
使用tuple()方法
str_1 = "1235" str_2 = 'zhangsan' str_3 = '''lisi''' list_1 = tuple(str_1) list_2 = tuple(str_2) list_3 = tuple(str_3) print(type(list_1)) print(type(list_2)) print(type(list_3)) print(list_1) print(list_2) print(list_3)
運行結(jié)果:

字符串 轉(zhuǎn)換為 字典
利用eval()方法,可以將字典格式的字符串轉(zhuǎn)換為字典
eval() 函數(shù)用來執(zhí)行一個字符串表達式,并返回表達式的值。
語法:eval(expression[, globals[, locals]])
①expression – 表達式。
②globals – 變量作用域,全局命名空間,如果被提供,則必須是一個字典對象。③locals – 變量作用域,局部命名空間,如果被提供,可以是任何映射對象。
str_1 = "{'name':'zhangsan','age':14,'gender':'girl'}"
dict_1 = eval(str_1)
print(type(dict_1))
print(dict_1)
運行結(jié)果:

利用json.loads()方法,可以將字典格式的字符串轉(zhuǎn)換為字典
json.loads 用于解碼 JSON 數(shù)據(jù)。該函數(shù)返回 Python 字段的數(shù)據(jù)類型。
語法:json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
import json
str_1 = '{"name":"xiaoming","age":18}'
dict_1 = json.loads(str_1)
print(type(dict_1))
print(dict_1)
運行結(jié)果:

二、列表(list)
列表轉(zhuǎn)字符串
利用‘'.join()將列表中的內(nèi)容拼接程一個字符串
Python join() 方法用于將序列中的元素(必須是str) 以指定的字符(''中指定的) 連接生成一個新的字符串。
list_1 = ['a', 'b', 'c'] str_1 = ''.join(list_1) print(type(str_1)) print(str_1)
運行結(jié)果:

列表轉(zhuǎn)字典
利用for in rang將兩個列表轉(zhuǎn)換為字典
list_1 = ['a', 'b', 'c']
list_2 = [1, 2, 3]
dict_1 = {}
for i in range(len(list_1)):
dict_1[list_1[i]] = list_2[i]
print(type(dict_1))
print(dict_1)
運行結(jié)果:

利用python內(nèi)置方法dict()和zip()將兩個列表轉(zhuǎn)換為字典
dict() 函數(shù)用于創(chuàng)建一個字典。
語法:class dict(**kwarg)
class dict(mapping, **kwarg)
class dict(iterable, kwarg)
①kwargs – 關(guān)鍵字
②mapping – 元素的容器。
③iterable – 可迭代對象。
zip() 函數(shù)用于將可迭代的對象作為參數(shù),將對象中對應的元素打包成一個個元組,然后返回由這些元組組成的列表。
語法:zip([iterable, …])
iterabl – 一個或多個迭代器;
list_1 = ['name', 'age'] list_2 = ['zhangsan',18] dict_1 = dict(zip(list_1, list_2)) print(type(dict_1)) print(dict_1)
運行結(jié)果:

三、元組(tuple)
元組轉(zhuǎn)換為字符串
- 使用方法__str__
- 返回一個對象的描述信息
tuple_1 = (1, 2, 3) str_1 = tuple_1.__str__() print(type(str_1)) print(str_1)
運行結(jié)果:

元組轉(zhuǎn)換為列表使用方法list()
list() 方法用于將元組轉(zhuǎn)換為列表。
語法:list( tup )
tup – 要轉(zhuǎn)換為列表的元組。
tuple_1 = (1, 2, 3) list_1 = list(tuple_1) print(type(list_1)) print(list_1)
運行結(jié)果:

元組不能轉(zhuǎn)換為字典
四、字典(dict)
字典轉(zhuǎn)換為字符串
使用 json.dumps()方法
json.dumps 用于將 Python 對象編碼成 JSON 字符串。
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding=“utf-8”, default=None, sort_keys=False, **kw)
字典轉(zhuǎn)換為元組
- 使用方法 tuple()
- 字典在轉(zhuǎn)換為元組之后,只會保存關(guān)鍵字
dict_1 = {"name":"zhangsan",
"age":18}
tuple_1 = tuple(dict_1)
print(type(tuple_1))
print(tuple_1)
運行結(jié)果:

字典轉(zhuǎn)換為列表
- 使用方法 list()
- 字典在轉(zhuǎn)換為列表之后,只會保存關(guān)鍵字
dict_1 = {"name":"zhangsan",
"age":18}
list_1 = list(dict_1)
print(type(list_1))
print(list_1)
運行結(jié)果:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- 如何將Python列表轉(zhuǎn)換為字符串
- 詳細整理python 字符串(str)與列表(list)以及數(shù)組(array)之間的轉(zhuǎn)換方法
- Python 字符串類型列表轉(zhuǎn)換成真正列表類型過程解析
- Python統(tǒng)計一個字符串中每個字符出現(xiàn)了多少次的方法【字符串轉(zhuǎn)換為列表再統(tǒng)計】
- python3 字符串/列表/元組(str/list/tuple)相互轉(zhuǎn)換方法及join()函數(shù)的使用
- Python字符串、元組、列表、字典互相轉(zhuǎn)換的方法
- Python 將字符串轉(zhuǎn)換為列表的7種方法匯總
相關(guān)文章
Python數(shù)據(jù)結(jié)構(gòu)之圖的存儲結(jié)構(gòu)詳解
本篇章主要介紹圖,包括圖的定義、相關(guān)術(shù)語、性質(zhì)及存儲結(jié)構(gòu),并用Python代碼實現(xiàn),需要的朋友可以參考下2021-06-06
python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法
本文主要介紹了python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11
Jmeter并發(fā)執(zhí)行Python 腳本的完整流程
這篇文章主要介紹了Jmeter并發(fā)執(zhí)行 Python 腳本的問題詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-09-09
Python的網(wǎng)絡(luò)編程庫Gevent的安裝及使用技巧
Gevent庫的奧義在于并發(fā)式的高性能網(wǎng)絡(luò)程序設(shè)計支持,這里我們將來講解Python的網(wǎng)絡(luò)編程庫Gevent的安裝及使用技巧,來看一下Gevent支持的多進程程序編寫:2016-06-06
Python AutoCAD 系統(tǒng)設(shè)置的實現(xiàn)方法
這篇文章主要介紹了Python AutoCAD 系統(tǒng)設(shè)置的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04
教你掌握分布式訓練PyTorch?DDP到Accelerate到Trainer
這篇文章主要為大家介紹了教你掌握分布式訓練PyTorch?DDP到Accelerate到Trainer2023-02-02
SVM算法的理解及其Python實現(xiàn)多分類和二分類問題
這篇文章主要介紹了SVM算法的理解及其Python實現(xiàn)多分類和二分類問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02

