unicode karakter Unicode kaçış dizilerini dönüştürmek yapmak "unicode (head.contents [3])" i buna benzer çıktı almak xf6ld". Kaçış dizisinin dize olarak döndürülmesini istiyorum. Python'da nasıl yapılır?nasıl bir piton dize
cevap
Python normal dize olarak adını görür varsayarsak, öncelikle unicode bunu deşifre gerekecek:
>>> name
'Christensen Sk\xf6ld'
>>> unicode(name, 'latin-1')
u'Christensen Sk\xf6ld'
Bunu gerçekleştirmenin bir başka yolu:
>>> name.decode('latin-1')
u'Christensen Sk\xf6ld'
aşağıdaki örneğe bakın
Dizenin önündeki "u" ile, kodun değiştirilmediğine dikkat edin. Eğer bu yazdırırsanız, aksanlı harf düzgün gösterilmiştir:
>>> print name.decode('latin-1')
Christensen Sköld
BTW: gerektiğinde size örneğin içine unicode açmak için de "kodlamak" yöntemini kullanabilir UTF-8 dizesi: Unicode ile bir bayt dizisi Verilen
>>> name.decode('latin-1').encode('utf-8')
'Christensen Sk\xc3\xb6ld'
Kesintisiz çalıştığından şüpheleniyorum. Varsayılan olarak, tüm terminaller unicode'u desteklemediğinden, Python ASCII kodlamasında dizeleri görüntüler. Aslında dizeyi yazdırırsanız, çalışmalıdır.
>>> u'\xcfa'
u'\xcfa'
>>> print u'\xcfa'
Ïa
Sorun terminalde bulunuyorsa, bir veritabanına (MySQL) kaydedersem düzgün görüntülenecek mi? – Vicky
Evet, öyle olacak, ancak DB'nizin harmanlama/karakter seti kodlamanızla ilgilenmeniz gerekiyor. – securecurve
b"\N{SNOWMAN}"
, b"\N{SNOWMAN}".decode('unicode-escape)
beklenen Unicode dizesi u'\u2603'
üretecek kaçar.
- 1. piton dize
- 2. piton datetime nesnesine bir isoformat dize dönüştürmek
- 3. piton, bu dizeden bağlantı kaldırılabilir nasıl dize
- 4. iyi bir yol Ben piton öğreniyorum dize
- 5. piton
- 6. piton: Ben dize kodlamak istediğiniz doğru tırnak
- 7. piton baskı dize komutu tarafından atılan ZeroDivisionError
- 8. bir piton komut
- 9. nasıl piton
- 10. nasıl piton
- 11. Piton bir sinyali nasıl işler?
- 12. i biçimde bir piton dizesi
- 13. piton
- 14. (piton)
- 15. piton
- 16. piton
- 17. piton
- 18. piton
- 19. piton
- 20. piton
- 21. edilemiyor piton
- 22. piton -
- 23. piton
- 24. piton
- 25. piton
- 26. piton
- 27. piton
- 28. piton
- 29. piton:
- 30. Geçiş piton liste boost piton
çok teşekkürler dostum. Yani bir veritabanına kaydetmek için ihtiyacım olursa onu çözebilir ve veritabanına kaydedebilirim, değil mi? – Vicky
NO, Mark örneğini tekrar okuyun. Unicode'a ne olursa olsun (latin1, cp1252, vb.) Verileri kod çözdükten sonra, (1) veritabanınızın desteklediği ve (2) tüm unicode karakterlerini koruduğu bir kodlama ile unicode dizginizi kodlamanız gerekir ... tipik olarak UTF-8 . –