您的位置:首頁技術文章
文章詳情頁

Python 實現list,tuple,str和dict之間的相互轉換

瀏覽:22日期:2022-06-25 16:32:58
1、字典(dict)

dict = {‘name’: ‘Zara’, ‘age’: 7, ‘class’: ‘First’}1.1 字典——字符串

返回:

print type(str(dict)), str(dict)1.2 字典——元組

返回:(‘age’, ‘name’, ‘class’)

print tuple(dict)1.3 字典——元組

返回:(7, ‘Zara’, ‘First’)

print tuple(dict.values())1.4 字典——列表

返回:[‘age’, ‘name’, ‘class’]

print list(dict)1.5 字典——列表

print dict.values2、元組

tup=(1, 2, 3, 4, 5)2.1 元組——字符串

返回:(1, 2, 3, 4, 5)

print tup.__str__()2.2 元組——列表

返回:[1, 2, 3, 4, 5]

print list(tup)2.3 元組不可以轉為字典3、列表

nums=[1, 3, 5, 7, 8, 13, 20];3.1 列表——字符串

返回:[1, 3, 5, 7, 8, 13, 20]

print str(nums)3.2 列表——元組

返回:(1, 3, 5, 7, 8, 13, 20)

print tuple(nums)3.3 列表不可以轉為字典4、字符串4.1 字符串——元組

返回:(1, 2, 3)

print tuple(eval('(1,2,3)'))4.2 字符串——列表

返回:[1, 2, 3]

print list(eval('(1,2,3)'))4.3 字符串——字典

返回:

print type(eval('{’name’:’ljq’, ’age’:24}'))

補充:python入門之路:一個小錯誤,str變tuple

筆者在編程的時候發現,原先定義的str字符串在傳遞和引用的時候會莫名其妙改變類型,變成tuple。

import random class get_Veri(object): def random_color(self): random_color=(random.randint(0,255),random.randint(0,255),random.randint(0,255)) return random_color def random_num(self): random_num = str(random.randint(0, 9)) return random_num def random_lowerchr(self): random_lowerchar=chr(random.randint(97, 122)) return random_lowerchar def random_upperchr(self): random_upperchr = chr(random.randint(65, 90)) return random_upperchr def random_char(self): random_char = random.choice([get_Veri.random_num(self), get_Veri.random_upperchr(self), get_Veri.random_lowerchr(self)]) print(random_char) print(type(random_char)) return random_char

這里random_char函數輸出一個隨機字符串,可以看到type類型為:

<class ’str’>

在另一個文件中進行引用:

from random_data.py import get_Veri get_veri=get_Veri()random_char = get_veri.random_char(),print(random_char)print(type(random_char))

發現random_char的type類型已經發生改變:

<class ’tuple’>

只是一個簡單的賦值,為什么會發生改變?

原因是在賦值的時候多加了一個逗號。

這個逗號讓編譯器執行的時候理解為('str',)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Python 編程
相關文章:
国产综合久久一区二区三区