目錄
一、DLL load failed while importing _imaging: 找不到指定的模塊
二、Cartopy安裝失敗
三、simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
四、raise IndexError("single positional indexer is out-of-bounds")
五、TypeError: '_AxesStack' object is not callable
一、DLL load failed while importing _imaging: 找不到指定的模塊
問題:
原因:查看報(bào)錯(cuò)信息發(fā)現(xiàn)是導(dǎo)入from PIL import Image模塊錯(cuò)誤,查閱資料得知是pillow與python版本不匹配。由于我的pillow版本是在安裝anaconda是默認(rèn)安裝的最高版本,因此需要降pillow的版本。
pillow與python的版本對(duì)應(yīng)關(guān)系可參考這個(gè)博客:(1條消息) DLL load failed while importing _imaging: 找不到指定的模塊的解決方法_masteryi-0018的博客-CSDN博客解決:
(1)考慮到我是在anaconda創(chuàng)建的虛擬環(huán)境下創(chuàng)建的項(xiàng)目,因此我嘗試使用conda命令進(jìn)行卸載與安裝,
conda uninstall pillow
conda install pillow=8.3
但是沒有解決。
(2)網(wǎng)上有人說是由于高版本的python,某些包的依賴包的版本沒跟上,就會(huì)出現(xiàn)DLL的情況。
我目前的conda虛擬環(huán)境是python3.9,于是我換了一個(gè)conda虛擬環(huán)境python3.8的,發(fā)現(xiàn)沒有報(bào)這個(gè)錯(cuò)了。
二、Cartopy安裝失敗
問題:在PyCharm中pip安裝Cartopy庫(kù)時(shí)遇到了報(bào)錯(cuò)
解決:查看Cartopy官方文檔,可以使用Conda安裝。
因?yàn)槲乙寻惭bAnaconda編譯器并進(jìn)行了配置,安裝Cartopy,在終端輸入以下代碼:
conda install -c conda-forge cartopy
等待一段時(shí)間,安裝成功。
三、simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
問題:
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
原因:大概率是?json.load()
載入json
文件時(shí)出現(xiàn)了錯(cuò)誤,問題一般是由于json
文件損壞或內(nèi)容缺失,題主是因?yàn)?code>open()文件的時(shí)候選擇了read
模式導(dǎo)致json
文件被清空。?
四、raise IndexError("single positional indexer is out-of-bounds")
問題:使用pandas模塊對(duì)csv文件進(jìn)行讀取,過程中遇到了報(bào)錯(cuò)
原因:指索引下標(biāo)越界了,所以找到報(bào)錯(cuò)的地方檢查下標(biāo)是否在數(shù)據(jù)列表范圍內(nèi)。說白一些就是列表的最后一行數(shù)據(jù)不能向下計(jì)算了,需要忽略。
解決:想辦法把它忽略掉,可以再遍歷的時(shí)候?qū)?shù)值減一
五、TypeError: '_AxesStack' object is not callable
問題:在使用nx.draw時(shí)出現(xiàn)的一個(gè)錯(cuò)誤,
原因:可能是目前安裝的networkx版本有問題
解決:
(1)網(wǎng)上有人說,升級(jí)networkx庫(kù)的版本就可以了,
但是,我試了一下,還是不行。
(2)修改代碼,調(diào)用nx.draw_networkx_edges
# nx.draw(G, pos, edge_color='lightseagreen', alpha=0.5)
nx.draw_networkx_edges(G, pos, edge_color='lightseagreen', width=2) # 設(shè)置邊的顏色
?目前全部代碼:文章來源:http://www.zghlxwxcb.cn/news/detail-692490.html
import matplotlib.pyplot as plt
import networkx as nx
import numpy as np
import pickle
# 創(chuàng)建:空的 有向圖
G = nx.MultiDiGraph()
row = np.array(['D1', 'D2', 'D3', 'D4', 'D5', 'F1', 'F2', 'F3', 'M1', 'M6', 'M3', 'M4', 'M5', 'G1'])
G.add_nodes_from(['D1', 'D2', 'D3', 'D4', 'D5', 'F1', 'F2', 'F3', 'M1', 'M6', 'M3', 'M4', 'M5', 'G1'])
value = np.array([12, 12, 34, 2, 4, 5, 6, 7, 8, 9, 10, 12, 13, 13])
for j in range(0, 14):
for i in range(0, 14):
if i != j:
G.add_weighted_edges_from([(row[j], row[i], 2)]) # 邊的起點(diǎn),終點(diǎn),權(quán)重
else:
pass
node_sizes = [44, 22, 29, 20, 35, 11, 32, 20, 41, 22, 57, 10, 11, 20]
node_sizesnew = []
for i in node_sizes:
i = i * 20
node_sizesnew.append(i)
pos = {'D1': (37.29, 77.42), 'D2': (31.73, 59.91), 'D3': (40.47, 27.53), 'D4': (58.82, 15.55), 'D5': (46.29, 89.65),
'F1': (72, 52), 'F2': (61.64, 45.73), 'F3': (59.22, 59.78), 'G1': (11.64, 49.73), 'M1': (50.55, 49.27),
'M3': (46.56, 56.18), 'M4': (74.75, 74.25), 'M5': (58.25, 46), 'M6': (49.09, 61.09)}
nx.draw_networkx_nodes(G, pos, node_size=node_sizesnew, alpha=0.4)
nx.draw_networkx_labels(G, pos, font_size=8, )
# nx.draw(G, pos, edge_color='lightseagreen', alpha=0.5)
nx.draw_networkx_edges(G, pos, edge_color='lightseagreen', width=2) # 設(shè)置邊的顏色
plt.savefig("images/MATCH52.png", dpi=200, bbox_inches='tight')
plt.show()
發(fā)現(xiàn)可以了。文章來源地址http://www.zghlxwxcb.cn/news/detail-692490.html
到了這里,關(guān)于python 深度學(xué)習(xí) 解決遇到的報(bào)錯(cuò)問題4的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!