python字符串报错。

以下为报错代码:

def get_point_id(point_type, id):#id为float或者int

if not id:
    return None
#try:
if True:
    str_id = str(int(id))
    print isinstance(str_id,str)
    if point_type == 'alarm':
        return str_id.rjust(3,'0')//报错。
        

控制台报错为 :
File "b2_insert_standard_template_signals.py", line 118, in get_point_id

return str(str_id).rjust(3,'0')

TypeError: must be char, not unicode

求解决。

阅读 3.1k
1 个回答

你的文件中是不是加了

from __future__ import unicode_literals

两种解决办法:

1.

str_id.rjust(3, b'0')

2.

str_id = unicode(id)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题