2

例 - 次の辞書があります...

URLDict = {'OTX2':'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=OTX2&action=view_all',
'RAB3GAP':'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=RAB3GAP1&action=view_all',
'SOX2':'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=SOX2&action=view_all',
'STRA6':'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=STRA6&action=view_all',
'MLYCD':'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=MLYCD&action=view_all'}

urllib を使用して for ループで各 URL を呼び出したいのですが、どうすればよいですか?

このようなリスト形式のURLでこれを成功させました...

OTX2 = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=OTX2&action=view_all'
RAB3GAP = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=RAB3GAP1&action=view_all'
SOX2 = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=SOX2&action=view_all'
STRA6 = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=STRA6&action=view_all'
MLYCD = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=MLYCD&action=view_all'

URLList = [OTX2,RAB3GAP,SOX2,STRA6,PAX6,MLYCD]

for URL in URLList:                                                        
    sourcepage = urllib.urlopen(URL)                                     
    sourcetext = sourcepage.read() 

しかし、後でデータを返すときにキーを出力できるようにしたいと考えています。リスト形式を使用すると、キーは変数になるため、印刷のためにアクセスすることができず、値を印刷することしかできません。

助けてくれてありがとう。

トム

4

3 に答える 3

4

(簡単な例として)試しましたか:

for key, value in URLDict.iteritems():
    print key, value
于 2012-10-15T19:18:18.357 に答える
4

辞書も必要ないようです。

dbs = ['OTX2', 'RAB3GAP', 'SOX2', 'STRA6', 'PAX6', 'MLYCD']
urlbase = 'http://lsdb.hgu.mrc.ac.uk/variants.php?select_db=%s&action=view_all'

for db in dbs:
    sourcepage = urllib.urlopen(urlbase % db)
    sourcetext = sourcepage.read()
于 2012-10-15T19:20:27.197 に答える
2

私はこのようにそれについて行きます:

for url_key in URLDict:
    URL = URLDict[url_key]

    sourcepage = urllib.urlopen(URL)
    sourcetext = sourcepage.read()

URLは明らかにであり、名前内の値URLDict[url_key]を保持できます。例えば:keyurl_key

print url_key

最初の反復で。を出力しますOTX2

于 2012-10-15T19:41:07.370 に答える