python根據字典自動生成一組省和市名


字典如下:

dict={
'河北省':['石家庄','唐山','秦皇島','承德'], '山東省':['濟南','青島','臨沂','淄博'], '湖南省':['長沙','衡陽','湘潭','邵陽','岳陽','株洲'], '江西省':['南昌','九江','上饒','景德鎮']
   }

dict.keys()返回鍵值組,是字典類型,用list把它轉為列表,從中任取一個就是省。

列表=list(dict.keys())
省=列表[i]

 

城市列表=dict[省]

城市=城市列表[i]

所以: 城市=dict[省][i]

用random模塊隨機選擇

代碼如下 :

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import psycopg2
import random

conn=psycopg2.connect('dbname=test1 user=jm password=123')
cur=conn.cursor()
cur.execute('select sid from class1') #sid 不是順序數,
result=cur.fetchall()

x={'河北省':['石家庄','唐山','秦皇島','承德'],
   '山東省':['濟南','青島','臨沂','淄博'],
   '湖南省':['長沙','衡陽','湘潭','邵陽','岳陽','株洲'],
   '江西省':['南昌','九江','上饒','景德鎮']}
for i in range(cur.rowcount):
    s=list(x.keys())             #省列表
    sheng=random.choice(s)       #隨機選一個省
    city=random.choice(x[sheng]) #隨機選一人市
    sid=result[i][0]    
    
    cur.execute('update class1 set sheng=%s,city=%s where sid=%s',(sheng,city,sid))
conn.commit()
print('ok')

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM