簡體   English   中英

錯誤:“字符映射”編解碼器無法解碼位置3696中的字節0x9d:字符映射到 <undefined> (Windows命令行,bokeh程序)

[英]ERROR: 'charmap' codec can't decode byte 0x9d in position 3696: character maps to <undefined> (Windows Command Line, bokeh program)

我一直在嘗試運行類似於Bokeh中的gapminder程序的程序。 我有理由確定我的繪圖代碼很好,所以我不會發布它,並且大約70%的人肯定我的繪圖代碼也很好。 但是,當我跑步時

bokeh serve --show myapp.py   

在Windows命令提示符下,我收到錯誤消息:'charmap'編解碼器無法解碼位置3696中的字節0x9d:字符映射到。 我知道我的代碼是用utf-8編碼的,如何確保Windows可以運行此代碼? 還是因為我計划在網站上實現,所以有沒有更好的方法來設置Bokeh服務器?

這是我的代碼的滑塊/動畫部分:

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環境中使用帶有特殊字符(德語變音符號)的“散景服務...”時,遇到了相同的問題。

對我來說,解決方案是以編程方式運行服務器,如以下示例所示:

在我看來,“散景服務...”無法正確處理編碼。

好的,所以我四處詢問,然后找出了導致此問題的原因。 原來是導致問題的“播放”和“暫停”按鈕旁邊的圖標,所以我只刪除了它們,然后運行了代碼。 回調和滑塊更新仍然存在問題,但是這些是我設法解決的單獨問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM