Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python สำหรับสร้างพจนานุกรมจากสตริง


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาตามที่ระบุด้านล่าง

แจ้งปัญหา − เราได้รับอินพุตสตริง เราต้องแปลงเป็นประเภทพจนานุกรม

เราจะพูดถึงสองวิธีในการแก้ปัญหาโดยไม่ต้องใช้ฟังก์ชัน dict() ในตัว

วิธีที่ 1 − ใช้วิธี eval()

เมธอด Eval จะใช้ก็ต่อเมื่อรูปแบบหรือรูปแบบของสตริงคล้ายกับพจนานุกรมเท่านั้น การแปลงสตริงเป็นพจนานุกรมโดยตรงสามารถเกิดขึ้นได้ในกรณีดังกล่าวตามที่อธิบายด้านล่าง

ตัวอย่าง

# String
string = "{'T':1, 'U':2, 'T':3, 'O':4, 'R':5}"
# eval() function
dict_string = eval(string)
print(dict_string)
print(dict_string['T'])
print(dict_string['T'])

ผลลัพธ์

{'T': 3, 'U': 2, 'O': 4, 'R': 5}
3
3

วิธีที่ 2 - การใช้ฟังก์ชันตัวสร้าง

หากเราได้รับอินพุตสตริงที่คล้ายกับไวยากรณ์ของพจนานุกรม ด้วยความช่วยเหลือของนิพจน์ตัวสร้าง เราสามารถแปลงเป็นพจนานุกรมได้

ตัวอย่าง

string = "T-3 , U-2 , T-1 , O-4 , R-5"
# Converting string to dictionary
dict_string = dict((x.strip(), y.strip()) for x, y in
(element.split('-') for element in string.split(', ')))
print(dict_string)
print(dict_string['T'])
print(dict_string['T'])

ผลลัพธ์

{'T': '1', 'U': '2', 'O': '4', 'R': '5'}
1
1

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีสร้างพจนานุกรมจากสตริง