天天看點

python type error是什麼意思_為何之前好好的Python程式會提示TypeError: 'NoneType' object is not callable...

同樣的代碼,現在出事了。

Traceback (most recent call last):

File "D:\Python\experiments\20210213.py", line 85, in

ws['B1'] = get_titles[loop_excel].contents[0].strip()

TypeError: 'NoneType' object is not callable

第一步:

我将.strip()移除後的部分作了測試,

type是

是以是一個beautifulsoup的元素對象。NavigableString是bs4用來包裝tag中的字元串的。

.strip()是不會出問題的。因為這隻是為了去除前後的空格之類的。

而.contents屬性是可以将tag的子節點以清單的形式輸出,每一個Tag和Navigablestring都會被列出。NavigableString的長度就是以字元串長度來計算的,而Tag則是以tag數量來計算的。如一個a标簽,長度就是1。

是以暫時查不出原因。

第二步:

與舊版的程式進行對比。字面上看不出來。運作後看看。

嗯,也是一樣地,出現了這個情況。

但是之前明明不是這樣的呀。網站也沒有變化。

第三步:

去stackflow上問問吧。

python type error是什麼意思_為何之前好好的Python程式會提示TypeError: 'NoneType' object is not callable...

這類問題很容易被判duplicate。因為萬一重複的貼子太多,開發者将不容易搜尋到适宜的内容,而且也将耗費回答者的心血。是以還是建議先多看看,但是我這個問題在既往的内容中找不到答案,我在想是不是我這個問題有點問題。

90分鐘内隻能發一次問題。是以要慎重。一些管理者(或稱版主)可能沒有弄明白就會将你的問題關掉。

唉,這一天,先寫個未完待續吧。

第二日早晨續:

昨日一夜某深思良久,但未得結,遲遲睡下不表。待次日早起,上得兩節英語課後,又伏案研究,在pycharm之debug中找到一昨日未曾注意之疑點:

為何這個loop_excel僅是40.

數到第41項内容,果然發現此内容與其他有所不同。再次說明問題:早晨人的腦袋還是清晰一些,不太容易陷入昨天的怪圈或說是牛角尖。是以說嘛,tomorrow is another day. 這是雙關語。一般說的意思不是我現在想表達的意思。就好像YOLO一樣。short for 'you only live once', 在正常語境下是值得推敲的,因為好多誤導。

然後又到stackflow上寫了另外一篇ask,如下:

python type error是什麼意思_為何之前好好的Python程式會提示TypeError: 'NoneType' object is not callable...