Unicode编码错误:'latin-1' 编码器无法对0-9位置的字符进行编码:序号不在范围内(256)

2024-04-25 17:52:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用Python中的plotly从一个时间序列生成一个交互式图形,我得到了一个错误:UnicodeEncodeError:'latin-1'编解码器无法对位置0-9中的字符进行编码:序号不在范围内(256)

这是我的密码:

from pathlib import Path
import plotly
import chart_studio

chart_studio.tools.set_credentials_file(username='****',                                              
                                  api_key='*****')

import chart_studio.plotly as py
import plotly.graph_objs as go

from plotly.offline import init_notebook_mode, iplot
init_notebook_mode(connected=True)

def parser2(x):
    try:
        return datetime.strptime( x, '%Y-%m-%d %H:%M:%S')#
    except:
        return 0

filename = r'AT_2018_10last.csv'
datafolder = Path('C:\HiWi Rodriguez\AT 2018\Last Value')
pathfile = datafolder / filename
ts = read_csv(pathfile, header=0,  parse_dates=[0], index_col=0 ,  date_parser=parser2)#, dtype = dtypes)
ts.columns = ['A']
ts.plot()

AT = go.Scatter(x=ts.index, y=ts.A)

layout = go.Layout(title='Ambient Temperature', xaxis=dict(title='Date'),
                   yaxis=dict(title='[°C]'))

fig = go.Figure(data=AT, layout=layout)
py.iplot(fig, sharing='public')

Tags: pathfrompyimportgotitleinitas
1条回答
网友
1楼 · 发布于 2024-04-25 17:52:21

因此chart_studio似乎只允许将extended ASCII table中的字符用作用户名和密码。你知道吗

根据您的错误信息,密码中似乎有错误字符。 您可以使用以下代码检查密码:

YOUR_PASSWORD = "your_p♥$$w0rd!_here"

for character in YOUR_PASSWORD:
    code_point = ord(character)

    if code_point < 256:
        print(f"    ok: {character} ({code_point})")
    else:
        print(f"not ok: {character} ({code_point})")

正如您在示例输出中看到的,字符的代码点为9829,因此会出现问题,因为它不在255的范围内:

ok: y (121)
ok: o (111)
ok: u (117)
ok: r (114)
ok: _ (95)
ok: p (112)
not ok: ♥ (9829)
ok: $ (36)
ok: $ (36)
ok: w (119)
ok: 0 (48)
ok: r (114)
ok: d (100)
ok: ! (33)
ok: _ (95)
ok: h (104)
ok: e (101)
ok: r (114)
ok: e (101)

相关问题 更多 >