错误:'charmap'编解码器无法解码位置 3696 中的字节0x9d:字符映射到<undefined>(Windows 命令行,散景程序)



我一直在尝试运行类似于散景中的gapminder程序。我有理由确定我的情节代码很好,所以我不会发布它,而且我大约 70% 确定我的情节更新代码也很好。但是,当我跑步时

bokeh serve --show myapp.py   

在我的 Windows 命令提示符下,我收到错误:"charmap"编解码器无法解码位置 3696 中的字节0x9d:字符映射到 .我知道我的代码是用utf-8编码的,我如何确保Windows可以运行它?或者有没有更好的方法来设置散景服务器,因为我计划在网站上实现它?

这是我代码的滑块/动画部分:

def animate_update():
patchnum = slider.value + 0.1
if patchnum > testdata['gameVersion'][slidelength]:
patchnum = testdata['gameVersion'][0]
slider.value = patchnum

def slider_update():
truepatch = slider.value
label.text = str(truepatch)
newdata = testdata[testdata['gameVersion'] == truepatch].to_dict
source.data = newdata
slider = Slider(start=testdata['gameVersion'][0], end=testdata['gameVersion']    [slidelength], value=testdata['gameVersion'][0], step=0.1, title='Patch')
slider.on_change('value', lambda attr, old, new: slider_update)
callback_id = None
def animate():
global callback_id
if button.label == '► Play':
button.label = '❚❚ Pause'
callback_id = curdoc().add_periodic_callback(animate_update, 200)
else:
button.label = '► Play'
curdoc().remove_periodic_callback(callback_id)
button = Button(label='► Play', width=60)
button.on_click(animate)
layout = layout([
[plot],
[slider, button],
], sizing_mode='scale_width')
curdoc().add_root(layout)
curdoc().title = 'Playrate, Banrate and Winrate by Patch'
output_file('champminder.html')
show(layout)

几周前,我在尝试使用"散景服务......"时看到了同样的问题。在 Windows 环境中,并带有特殊字符(德语变音符号(。

对我来说,解决方案是以编程方式运行服务器,如以下示例所示:

  • https://github.com/bokeh/bokeh/blob/master/examples/howto/server_embed/standalone_embed.py

  • 如何在独立服务器中嵌入散景服务器

在我看来,"散景服务..."未正确处理编码。

好的,所以我四处询问,我找出了导致问题的原因。事实证明,"播放"和"暂停"按钮旁边的图标导致了问题,所以我只是删除了它们并运行了代码。回调和滑块更新仍然存在问题,但这些都是我设法解决的单独问题。

最新更新