国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

protobuf 的bug:ImportError_ cannot import name ‘builder‘ from ‘google.protobuf.internal‘

這篇具有很好參考價值的文章主要介紹了protobuf 的bug:ImportError_ cannot import name ‘builder‘ from ‘google.protobuf.internal‘。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

0 前言

今天了解到有一個很強大的數(shù)據(jù)分析工具streamlit,下載安裝完發(fā)現(xiàn)啟動不了……沒錯就是本文的bug.
什么是protobuf?

Protocol Buffers 是 Google 開發(fā)的一種數(shù)據(jù)交換格式,采用了一種類似于 XML 的簡單的語法,用于定義數(shù)據(jù)結(jié)構(gòu),并且可以將這些結(jié)構(gòu)序列化為二進制文件,以便在不同的編程語言之間進行數(shù)據(jù)交換。
它是一種和語言無關(guān)、平臺無關(guān)、可擴展的序列化結(jié)構(gòu)數(shù)據(jù)的方法。
它比 XML 更快地進行編碼解碼,可以用更小的文件大小來儲存數(shù)據(jù)。

相關(guān)環(huán)境:

Windows 64位
Python3.9
Steamlit1.16.0
protobuf
3.19.1

1 場景還原

安裝streamlit

pip install streamlit

importerror: cannot import name 'builder' from 'google.protobuf.internal,Python數(shù)據(jù)分析合集,bug,python,開發(fā)語言

streamlit hello

importerror: cannot import name 'builder' from 'google.protobuf.internal,Python數(shù)據(jù)分析合集,bug,python,開發(fā)語言
報錯內(nèi)容:

ImportError: cannot import name ‘builder’ from ‘google.protobuf.internal’

2 解決方案

在安裝過程中,可以看到,官方推薦的protobuf版本要求是**<4,>=3.12**,而我的版本是3.19.1,理論上是可以的。
importerror: cannot import name 'builder' from 'google.protobuf.internal,Python數(shù)據(jù)分析合集,bug,python,開發(fā)語言

但實際上卻是protobuf在v3.20之后進行了簡化,builder.py有一些變動??赡?code>streamlit未做更新。

解決方法就是更新protobuf。

pip install --upgrade protobuf 

importerror: cannot import name 'builder' from 'google.protobuf.internal,Python數(shù)據(jù)分析合集,bug,python,開發(fā)語言
升級成功了,但是streamlit還來湊熱鬧,提示我可能的錯誤:二者不兼容……(sl:不管實際對不對,反正要按我的設(shè)定走????)
升級完成后,我的版本為4.21.12。

不管這個報錯,重新開啟streamlit。

streamlit hello

這回就沒有報錯了。
importerror: cannot import name 'builder' from 'google.protobuf.internal,Python數(shù)據(jù)分析合集,bug,python,開發(fā)語言


2022-12-26補充:
protobuf == 3.20.3 也是可以的,今天在另外一臺電腦上裝了,由于一開始沒有 protobuf,默認給我裝了 3.20.3 的版本,可正常使用。文章來源地址http://www.zghlxwxcb.cn/news/detail-818785.html

到了這里,關(guān)于protobuf 的bug:ImportError_ cannot import name ‘builder‘ from ‘google.protobuf.internal‘的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • ImportError: cannot import name ‘OrderedDict‘ from ‘typing‘的解決辦法

    ImportError: cannot import name ‘OrderedDict‘ from ‘typing‘的解決辦法

    環(huán)境是:pytorch:1.13.0 ? ? ? ? ? ? ? ?python :3.7.0 本來代碼只有一點導(dǎo)入下載數(shù)據(jù)集并做處理,準備先運行下載數(shù)據(jù)集時,報了這個錯誤。 ? ?查詢網(wǎng)上說的是python的版本有問題? 于是在anconda上更改這個環(huán)境的版本到python3.7.2 然后運行再試著運行代碼, 運行成功! 總結(jié):

    2024年02月17日
    瀏覽(21)
  • Python報錯:ImportError: cannot import name ‘xxx‘ from ‘xxx‘

    Python報錯:ImportError: cannot import name ‘xxx‘ from ‘xxx‘

    python運行.py文件時報錯:ImportError: cannot import name ‘xxx‘ from ‘xxx‘(無法從\\\'xxx\\\'中導(dǎo)入\\\'xxx\\\')該問題為xxx變量被二次定義(重名了) 如以下cannot importt \\\'Ship2\\\' form \\\'ship2\\\' ()的報錯,解決方案為:查看子函數(shù)ship2內(nèi)的定義是否存在一個變量在另外的子函數(shù)或者main主函數(shù)中已然被定

    2024年02月15日
    瀏覽(22)
  • ImportError: cannot import name ‘SQLDatabaseChain‘ from ‘langchain‘解決方案

    ImportError: cannot import name ‘SQLDatabaseChain‘ from ‘langchain‘解決方案

    ??大家好,我是愛編程的喵喵。雙985碩士畢業(yè),現(xiàn)擔(dān)任全棧工程師一職,熱衷于將數(shù)據(jù)思維應(yīng)用到工作與生活中。從事機器學(xué)習(xí)以及相關(guān)的前后端開發(fā)工作。曾在阿里云、科大訊飛、CCF等比賽獲得多次Top名次?,F(xiàn)為CSDN博客專家、人工智能領(lǐng)域優(yōu)質(zhì)創(chuàng)作者。喜歡通過博客創(chuàng)作

    2024年02月10日
    瀏覽(23)
  • 解決 ImportError: cannot import name ‘contextfilter‘ from ‘jinja2‘

    升級 jupyterhub -i 就是選擇鏡像源,不然更新很慢。 如果是conda環(huán)境,運行以下命令 國內(nèi)鏡像: 更新pip

    2024年02月12日
    瀏覽(35)
  • 已解決ImportError: cannot import name ‘DecisionBoundaryDisplay‘ from ‘sklearn.inspection‘

    已解決ImportError: cannot import name ‘DecisionBoundaryDisplay‘ from ‘sklearn.inspection‘

    已解決(from sklearn.inspection import DecisionBoundaryDisplay導(dǎo)包錯誤)ImportError: cannot import name ‘DecisionBoundaryDisplay’ from ‘sklearn.inspection’ (F:softwareinstalledAnacondalibsite-packagessklearninspection_ init _.py)親測有效 一個小伙伴遇到問題跑來私信我,想用sklearn導(dǎo)入DecisionBoundaryDisplay,但是

    2024年02月04日
    瀏覽(43)
  • paddleclas ImportError: cannot import name ‘Identity‘ from ‘paddle.nn‘

    paddleclas ImportError: cannot import name ‘Identity‘ from ‘paddle.nn‘

    使用paddlepaddle的 paddleclas 官方demos時 , 報錯 如圖 ImportError: cannot import name ‘Identity’ from ‘paddle.nn’ 注釋掉就解決啦 !!! 搞定?。。。。。?!

    2024年02月11日
    瀏覽(24)
  • 成功解決 ImportError: cannot import name ‘Field‘ from ‘torchtext.data‘

    當(dāng)試圖導(dǎo)入以上包的時候,出現(xiàn)了報錯 根據(jù)網(wǎng)上的教程,嘗試命令“!pip install torchtext==0.9.0” 此后再次運行from torchtext.data import Field, Dataset, Example, Iterator,依然會出現(xiàn)報錯 嘗試from torchtext.legacy.data import Field, Dataset, Example, Iterator,依舊報錯 使用命令:!pip install torch==1.8.0 tor

    2024年02月16日
    瀏覽(32)
  • 解決ImportError: cannot import name ‘soft_unicode‘ from ‘markupsafe‘

    解決ImportError: cannot import name ‘soft_unicode‘ from ‘markupsafe‘

    運行jupyter notebook的時候報錯: ImportError: cannot import name \\\'soft_unicode\\\' from \\\'markupsafe\\\' 這個報錯應(yīng)該怎么解決呢? 1、 根據(jù)錯誤提示,我們發(fā)現(xiàn)是導(dǎo)入markupsafe這個庫引起的報錯,首先我們先查看這個庫是否存在 pip show markupsafe 2、經(jīng)過查看我們發(fā)現(xiàn)這個庫是已經(jīng)安裝過的。那我們嘗

    2024年02月20日
    瀏覽(20)
  • 已解決ImportError: cannot import name ‘ParamSpec‘ from ‘typing_extensions‘

    已解決ImportError: cannot import name ‘ParamSpec‘ from ‘typing_extensions‘

    安裝完scrapy模塊后運行拋出異常ImportError: cannot import name ‘ParamSpec’ from \\\'typing_extensions’的正確解決方法,親測有效!??! 粉絲群里面的一個小伙伴遇到問題跑來私信我,想用安裝完scrapy模塊后運行,但是發(fā)生了報錯(當(dāng)時他心里瞬間涼了一大截,跑來找我求助,然后順利幫

    2024年02月05日
    瀏覽(22)
  • ImportError: cannot import name ‘_request_ctx_stack‘ from ‘flask‘

    flask版本:3.0.0 修改 [你的虛擬環(huán)境]Libsite-packagesflask_scriptcommands.py from flask import _request_ctx_stack 改為 from flask import request_ctx 修改 [你的虛擬環(huán)境]Libsite-packagesflask_ init _.py 導(dǎo)入 from .globals import _no_app_msg, request_ctx

    2024年01月20日
    瀏覽(43)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包