2

Python コードは次のとおりです。

user = "aabc" 
password = "yyy12%"
data = urllib.urlencode({"loginname": user, "nloginpwd": password})
print data

結果は次のとおりです。loginname=aabc&nloginpwd=yyy12%25

25文字列の最後に追加されたのはなぜですか?

4

2 に答える 2

4

この%文字は、URL で特別な意味を持ちます。エスケープシーケンスを開始するために使用されます。ウィキペディアのパーセント エンコーディングの記事を参照してください。次に、リテラル %もエンコードする必要が%25あり、エンコードされたバージョンです。ウィキペディアのページから:

パーセント ( "%") 文字は、パーセントでエンコードされたオクテットの指標として機能する"%25"ため、そのオクテットを URI 内のデータとして使用するには、パーセントでエンコードする必要があります。

つまり、%25はエンコードされた%文字です。

于 2015-11-30T16:08:00.830 に答える
3

ウィキペディアから:

パーセント (「%」) 文字はパーセントでエンコードされたオクテットのインジケータとして機能するため、そのオクテットを URI 内のデータとして使用するには、「%25」としてパーセントでエンコードする必要があります。

簡単な例:

>>> urllib.parse.quote('%')
'%25'
于 2015-11-30T16:08:41.180 に答える