首頁  >  文章  >  運維  >  linux python 中文亂碼如何解決

linux python 中文亂碼如何解決

藏色散人
藏色散人原創
2021-12-14 11:28:593158瀏覽

linux python中文亂碼的解決方法:1、查看matplotlib字體位置;2、上傳字體到伺服器;3、刪除字體快取;4、重啟python應用程式即可。

linux python 中文亂碼如何解決

本文操作環境:linux5.9.8系統,Anaconda3,Dell G3電腦。

linux python 中文亂碼如何解決?

linux下python中文亂碼解決方案

1.場景描述

#linux伺服器下方安裝了Anaconda3,執行Pyhton的K-means演算法,結果出現如下圖的中文字元亂碼。上次已經解決了,忘記記錄解決流程了,這次配置了一台新的伺服器,又出現,預設不配置的話matplotlib畫圖就會亂碼,這次把解決過程記錄下,希望能幫助自己和有需要的朋友。

2. 解決方案

網路上有好幾個解決方案,只介紹自己實戰可行的。

1. 查看matplotlib字體位置

python
import matplotlib 
print(matplotlib.matplotlib_fname())

#记录下来,字体位置我的是:/home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc

exit()

2. 上傳字體到伺服器

cd /home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf

通过ftp或者其他方式,将字体传上去,我们传的是:simhei.ttf

3.  刪除字體快取

cd  ~/.cache/matplotlib
rm -rf *

4. 重啟python應用程式

nohup python k-means.py &

說明: 假如還沒生效,再更改個設定檔試試看。 (我們以前沒更改這個配置文件,但這次發生了一個插曲,這次用的jmeter測試,一直還是亂碼,後來改了這個還是不行,原來是jmeter的問題)

cd  /home/ruanjianlaowang/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data

vi matplotlibrc 
font.family         : sans-serif  #去掉前面的#
font.serif          : simhei, DejaVu Serif,   #新加了simhei

#插曲

這次用的jmeter測試,發現都更改了還是亂碼,後來jmeter的請求中增加了utf-8參數才可以。


推薦學習:《linux影片教學

以上是linux python 中文亂碼如何解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn