2013-07-29 43 views
-3

在C中,我可以這樣做:printf("%c%c",-108,109);。但如何在Python中做到這一點?在python字符串中插入負的ASCII字符

args[2]='Test%c%cFile'% (-108,-109) 
OverflowError: unsigned byte integer is less than minimum 
+0

你只是想複製的事是c允許,還是你有一個真正的理由,你會想這樣做? – user2357112

+0

@ user2357112真實原因...你知道中文字符是負ASCII字符.. – Sayakiss

+3

@Sayakiss:...不,他們不是。有沒有搞錯? [這是ASCII。](http://www.asciitable.com/)你可能使用了奇怪的,非標準的終端控制字符或其他東西。 – user2357112

回答

1

從註釋中看來,您似乎希望將一些非ASCII字符放入字符串中。 Python中不需要涉及負整數的文本,它具有完美的Unicode字符串,用於存放任何您可能夢寐以求的字符。使用代碼表(如this one)查找字符的代碼點,然後使用\uxxxx語法將它們插入到字符串中。

編輯:你似乎是後U+9493CJK UNIFIED IDEOGRAPH-9493,它可以插入使用字符串

str = u"\u9493" 

(感謝@KeithThompson!)