質問

Commas( '%2c')で区切られたURL文字列に追加したいタグのリストがあります。これどうやってするの ?やってみた :

>>> tags_list
['tag1', ' tag2']
>>> parse_string = "http://www.google.pl/search?q=%s&restofurl" % (lambda x: "%s," %x for x in tags_list)

しかし、ジェネレーターを受け取りました:

>>> parse_string
'http://<generator object <genexpr> at 0x02751F58>'

また、コンマを変更する必要がありますか %2C?結果を解析するには、給餌する必要があります。はいの場合 - この特別なサインで区切られたタグを挿入するにはどうすればよいですか?


編集:

parse_string = ""
for x in tags_list:
    parse_string += "%s," % x

しかし、私はこれを逃れることができます %2C ?また、私はより短い「ラムダ」の方法があると確信しています:)

役に立ちましたか?

解決

parse_string = ("http://www.google.pl/search?q=%s&restofurl" % 
               '%2C'.join(tag.strip() for tag in tags_list))

結果:

>>> parse_string = ("http://www.google.pl/search?q=%s&restofurl" %
...                '%2C'.join(tag.strip() for tag in tags_list))
>>> parse_string
'http://www.google.pl/search?q=tag1%2Ctag2&restofurl'

サイドノート:
今後、あなたが使いたいと思います format() 文字列補間の場合、例:

>>> parse_string = "http://www.google.pl/search?q={0}&restofurl".format(
...                '%2C'.join(tag.strip() for tag in tags_list))
>>> parse_string
'http://www.google.pl/search?q=tag1%2Ctag2&restofurl'

他のヒント

"%s" 大丈夫ですが、 urlparse.urlunparseurllib.urlencode 安全です。

str.join 大丈夫ですが、タグをコンマと番号の標識を確認するか、使用することを忘れないでください urllib.quote それぞれに。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top