2017-02-08 7 views
3

URLの途中に文字列を追加しようとしています。URLをPythonに追加する

http://www.Holiday.com/('Woman',)/Beach 
http://www.Holiday.com/('Men',)/Beach 

どういうわけか、それは次のようになります:

http://www.Holiday.com/Woman/Beach 
http://www.Holiday.com/Men/Beach 

私は次のようなルックスを使用していますコード:

list = {'Woman','Men'} 
url_test = 'http://www.Holiday.com/{}/Beach' 
for i in zip(list): 
    url = url_test.format(str(i)) 
    print(url) 
+0

何が印刷されますか? –

+1

そして 'list'を変数名として使用しないでください。 –

答えて

2

これも試すことができますし、listを変数名として使用しないでください。

lst = {'Woman','Men'} 
url_test = 'http://www.Holiday.com/%s/Beach' 
for i in lst: 
    url = url_test %i 
    print url 
+0

'i'を' str'で囲むのはなぜですか?すでに文字列です –

5

ほとんどがどういうわけか、私の出力は次のようになります。 zipのためだけでは必要ありません:

items = {'Woman','Men'} # notice that this is a `set` and not a list 
url_test = 'http://www.Holiday.com/{}/Beach' 
for i in items: 
    url = url_test.format(i) 
    print(url) 

zip関数の目的は、アイテム場合、インデックスによっていくつかのコレクションに参加することです。 zipが各コレクションの値を結合すると、tupleに配置されます。その表現は__str__です。 ここでは、コレクション内のアイテムを繰り返し処理したいだけです

+3

'list'は良いvar名ではなく、(削除した)' str'は不要であることを言及しています – brianpck

+1

@brianpck - true :)特に実際には 'set' –

+1

@GiladGreen、ありがとうこれは私が探していたものです。どういうわけか私はジップの使用を誤解していました。 – MCM