python3.9安裝pyqt5,並設置pycharm

来源:https://www.cnblogs.com/Akiyama-tsuki/archive/2022/07/25/16519080.html
-Advertisement-
Play Games

python3.9安裝pyqt,並設置pycharm 前言 這個學期的暑假實訓需要使用pyqt開發gui界面,然後我的python不知道發生了什麼,安裝總是爆出各種奇怪的錯誤,安裝完後,開發和運行的過程中也發生了很多的離奇的問題,我浪費了很多的時間在解決各種報錯上,項目進度被耽誤了許多,幸運的是後來 ...


python3.9安裝pyqt,並設置pycharm

前言

這個學期的暑假實訓需要使用pyqt開發gui界面,然後我的python不知道發生了什麼,安裝總是爆出各種奇怪的錯誤,安裝完後,開發和運行的過程中也發生了很多的離奇的問題,我浪費了很多的時間在解決各種報錯上,項目進度被耽誤了許多,幸運的是後來得到了一份大佬打包好的pyqt運行環境,這才順利的完成了整個開發過程。
在結束開發後,我決定重裝python,並且重新認真的安裝一次pyqt,在經過幾次重裝後,終於得到了一個能夠正確運行的開發環境,未來一段時間都不會受到相關困擾了。
於是我將這次重裝的過程和一些思索寫在這裡,以供我自己未來查閱和其他人參考。

python的版本

在我寫這篇文章的這個時間,安裝pyqt5的python版本應該是python3.9較為合適,使用python3.10安裝會出現問題。
pyqt5能在python3.10 環境安裝成功的版本是5.15.6 , 而pyqt5-tools的最新版本是:pyqt5-tools 5.15.4.3.2,所以就會出現這樣一個狀況,python3.10只能安pyqt5 5.15.6,而pyqt5-tools只能到pyqt5-tools 5.15.4.3.2,tools的版本跟不上,所以在安裝tools的時候怎麼安都安不上。
這種問題不僅僅是出現在pyqt,我記得曾經學深度學習時,下載某些三方庫的時候也會發生版本不相容的問題,我得到的一個經驗就是,如果允許,儘量不要安裝最新的語言版本,這會導致某些第三方庫版本跟不上,我在這次實訓中安裝pyqt的問題就有一部分是自作聰明的安裝了最新的python。

安裝sip、pyqt、pyqt-tools和qscintilla

在安裝pyqt前必須先安裝sip包

pip install sip

wanchengsip的安裝後,安裝pyqt和pyqt-tools,
可以直接使用命令:

pip install PyQt5
pip install PyQt5-tools

不過國外的源,下載起來實在太慢了,有些時候還會超時,建議使用國內的鏡像。

pip install PyQt5 -i https://pypi.douban.com/simple
pip install PyQt5-tools -i https://pypi.douban.com/simple

另外,還要額外下載一個qscintilla的庫,他本來是包含在pyqt里的才對,但是不知道為什麼總是會"發生找不到Qsci模塊"的錯誤,我找到的解決方法就是額外下載相關的包,大概原因仿佛也是版本相容問題?下載的命令如下。

pip install qscintilla -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

完成以上下載沒問題的話(反正我重裝的python3.9是沒有問題發生的),會在python的安裝目錄的Lib/site-packages下看到如下的目錄結構。

接著需要驗證一下我們的安裝是否成功:我們使用python自帶的IDLE shell,然後輸入

import PyQt5
import PyQt5.Qsci  #這是為了驗證Qsci是否安裝成功
help(PyQt5)
help(PyQt5.Qsci)

如果結果類似如下則安裝成功。可以使用pyqt進行基本的gui開發了。

有關pycharm的設置

經過以上的內容,可以使用pyqt進行開發,但是我們可以進一步設置pycharm以此來方便開發。
pyqt的tools中包含了designer.exe文件,可以用於設計ui界面。把他設定為pycharm的一個外部工具,會比在外面不停調用方便的多。
我們點擊pycharm的文件->設置->工具外部工具,點擊如下圖所示的加號,就能夠添加一個外部工具。


。。。。。。未完待續


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文,將另闢蹊徑,介紹一種使用濾鏡去構建圓角的獨特方式。 首先,我們來看這樣一個圖形: 一個矩形,沒什麼特別的,代碼如下: div { width: 200px; height: 40px; background-color: #000; } 如果,我們現在需要給這個矩形的兩端加上圓角,像是這樣,該 ...
  • 本文簡介 點贊 + 關註 + 收藏 = 學會了 在 JS 中,偽數組 是非常常見的,它也叫 類數組。偽數組可能會給 JS 初學者帶來一點困擾。 本文將詳細講解 什麼是偽數組,以及分別在 ES5 和 ES6 中將偽數組轉換成真正的數組 。 什麼是偽數組? 偽數組的主要特征:它是一個對象,並且該對象有 ...
  • 最近由於項目需求,需要醫學影像.dcm文件的預覽功能,功能完成後,基於原生Demo做一個開源分享。 心急的小伙伴可以先看如下基於原生js的全部代碼: 一、全部代碼 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ...
  • 近期工作有涉及到數字大屏的需求,於是利用業餘時間,結合 Three.js 和 CSS實現賽博朋克2077風格視覺效果 實現炫酷 3D 數字地球大屏頁面。頁面使用 React + Three.js + Echarts + stylus 技術棧,本文涉及到的主要知識點包括:THREE.Spherical... ...
  • JavaScript進階內容——jQuery 我們在前面的文章中已經掌握了JavaScript的全部內容,現在讓我們瞭解一下JavaScript庫 這篇文章主要是為了為大家大致講解JavaScript庫以及使用方法,本篇不會完全講解jQuery的全部語法 如果希望完全掌握,可以參考網站jQuery ...
  • 1.創建虛擬環境 conda create --name yourEnv python=3.6 --name:也可以縮寫為 【-n】 yourEnv:是新創建的虛擬環境的名字,創建完,可以裝anaconda的目錄下找到envs/環境名 目錄 python=3.6:是python的版本號。也可以指定為 ...
  • JavaWeb 多個Servlet整合優化 由於一個Servlet只能接收一個地址的http請求,如果系統複雜度提高,就會有很多Servlet類。例如,對銷售系統來說,可能會有OederInsertServlet, OrderUpdateServlet, OrderDeleteSerlvet, Or ...
  • Spring Data JPA是Spring Data的子模塊。使用Spring Data,使得基於“repositories”概念的JPA實現更簡單和容易。Spring Data JPA的目標是大大簡化數據訪問層代碼的編碼。作為使用者,我們只需要編寫自己的repository介面,介面中包含一些個 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...