天天看點

python字元串轉換字典_python實作字元串和字典的轉換

一、把一個字元串的内容提取出來,并放到字典中

流程如下:

1、得到字元串s,通過分割提取得到s1(是個清單)

s=”name=lyy&age=3&sex=women&boyfriend=czt”

2、需要再對s1進行拆分,此時s1隻有4個元素,對s1進行周遊,拿到類似“name=lyy”的字元串,即s2

3、同樣通過分割把s2分割成s3清單

4、s3為[name,lyy],即為字典的鍵和值指派,鍵=s3[0],值=s3[1]

代碼如下:

# -*- coding: utf-8 -*-

s="name=lyy&age=3&sex=women&boyfriend=czt"

d={

}

s1=s.split("&")

# print s1

for i in xrange(4):

s2=s1[i]

# print s2

s3=s2.split("=")

print s3

key=s3[0]

value=s3[1]

d[key]=value

print d

改進代碼,改進之處——直接使用s2 in s1執行周遊

# -*- coding: utf-8 -*-

s="name=lyy&age=3&sex=women&boyfriend=czt"

d={

}

s1=s.split("&")

# print s1

for s2 in s1:

s3=s2.split("=")

print s3

key=s3[0]

value=s3[1]

d[key]=value

print d

二、把一個字典中的内容提取出來,并存儲為字元串

流程如下:

1、把字典中的項目取出來,使用items方法,使得字典的鍵值對變成清單s1的每一個元素,s1是清單

2、周遊s1的每一個元素,先需要讀取每一個元素的鍵和值,即key=s1[0],value=s1[2]

3、這時key和value分别都是字元串,用“=”連接配接起來

4、把每一個等式連接配接起來使用到append方法,建立清單存儲每次連接配接好的等式

5、使用清單的join方法,把“&”插入清單中

# -*- coding: utf-8 -*-

d={'age': '3', 'boyfriend': 'czt', 'name': 'lyy', 'sex': 'women'}

s1=d.items()

lst=[]

print s1

for i in xrange(4):

s2=s1[i]

print s2

key=s2[0]

value=s2[1]

print key

print value

s3=key+"="+value

print s3

lst.append(s3)

print lst

print "&".join(lst)

同樣簡化步驟,循環内語句這樣寫:

for s2 in s1:

key=s2[0]

value=s2[1]

s3=key+"="+value

lst.append(s3)

s2裡面對應就是兩個元素,簡化:

for s2 in s1:

key,value=s2

s3=key+"="+value

lst.append(s3)

發現s2同樣可以省略,但是上述的key和value連接配接依賴s2,可用格式化成字元串輸出來擺脫這種依賴,簡化如下

# -*- coding: utf-8 -*-

d={'age': '3', 'boyfriend': 'czt', 'name': 'lyy', 'sex': 'women'}

s1=d.items()

lst=[]

for key,value in s1:

s3="%s=%s"%(key,value)

lst.append(s3)

print "&".join(lst)

以上就是本文的全部内容,希望對大家的學習有所幫助,也希望大家多多支援腳本之家。