0

value正しくないエンコーディングで文字列を出力する python スクリプトがあります。sと同じ文字列で文字列を設定しようとしましたが、valueうまく印刷されます。私はそれらのタイプも印刷しましたが、どちらもstrings. コードは次のようになります。

s = "\xC3\xBA"
print s
print type(s)

print value
print type(value)

そしてこれは出力です:

ú
<type 'str'>
\xC3\xAD
<type 'str'>

値の出力は、のú代わりにする必要があり\xC3\xADます。s文字列を設定すると、\xC3\xAD正しく印刷されるのはなぜですか?! 誰にもアイデアはありますか?

は次のvalueように設定されています。

apps = data.split('-') 
for app in apps:
    app_data = app.split('\n')
    app_new = {}
    for app_field in app_data:
        key_value = app_field.split(':')
        if len(key_value) == 2:
            key = key_value[0].lstrip().rstrip().lower()
            value = key_value[1].lstrip().rstrip()
4

1 に答える 1

1

私はあなたのバックスラッシュもどういうわけか逃げられたと思います:

In [1]: value = "\\xC3\\xBA"

In [2]: print value
\xC3\xBA

In [3]: type(value)
Out[3]: <type 'str'>
于 2012-07-30T16:44:36.093 に答える