当我使用python(v3.2)将设备数据插入MySQL(v5.5.6)时。它遇到了一个问题。
这是设备A(包含三个unicode和一个空格):
'\ u202d \ u202d \ u202d'
和设备B(仅空白):
''
问题是当我将所有设备数据插入MySQL时,错误是
密钥“ PRIMARY”的条目“ activate_device-20151201-1-5740-01000P ------”重复
我想MySQL已经处理了'\ u202d'(也许是一个unicode来反转字符串?)。
我如何在python3等MySQL中模拟该过程?
如何避免重复?
预期结果是将python3中的'\ u202d \ u202d \ u202d'转换为''。
请帮我。
最佳答案
这里有些模棱两可。您是否只保留可见的ascii字符或可见的unicode字符?
如果您只想保留可见的ASCII字符,则简单的方法是使用python内置的string
模块。
import string
new_string = "".join(filter(lambda x:x in string.printable, original_string))
对于您的特定用例,空格是可见ascii的一部分-因此以上内容会将'\ u202d \ u202d \ u202d'和''转换为''
关于python - 使用python3将不可见的unicode插入MySQL,但是遇到重复,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34624723/