最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決python便攜版無(wú)法直接運(yùn)行py文件的問(wèn)題

 更新時(shí)間:2020年09月01日 14:41:18   作者:KISSLOO  
這篇文章主要介紹了解決python便攜版無(wú)法直接運(yùn)行py文件的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

關(guān)聯(lián):windows下無(wú)前綴直接運(yùn)行.py文件

關(guān)聯(lián):便攜版python無(wú)法直接運(yùn)行python腳本的問(wèn)題

癥狀:直接運(yùn)行py腳本發(fā)現(xiàn)無(wú)法傳遞參數(shù)。

在python便攜版可正常使用的情況下,python sqlmap.py - u xxx 可正常使用

指定py文件使用python.exe打開(kāi)時(shí),直接運(yùn)行 sqlmap.py - u xxx 發(fā)現(xiàn)無(wú)法傳遞參數(shù)。

原因:注冊(cè)表鍵值中缺少傳遞參數(shù)

指定便攜版python打開(kāi)py腳本時(shí),注冊(cè)表中打開(kāi)方式鍵值中少了傳遞參數(shù)的功能

本需要 C:/python路徑/python.exe “%1” %* ,其中"%1" %* 起傳遞參數(shù)的作用。

但是注冊(cè)表中只加入了 “C:/python路徑\python.exe” “%1” ,因此,無(wú)法直接運(yùn)行py腳本

示例:能夠正常使用的注冊(cè)表

HKEY_CLASSES_ROOT.py

HKEY_CLASSES_ROOT.py_auto_file\shell\open\command

HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command

修復(fù)

第一步:先指定py文件的打開(kāi)方式。

右擊py文件——>找到python.exe——>勾選始終使用此應(yīng)用打開(kāi).py文件。

修復(fù)注冊(cè)表

新建python.reg 內(nèi)容如下:【注意:其中C:\Program_Base\Python37\python.exe是我的python路徑,注冊(cè)表文件中需要斜杠\轉(zhuǎn)義特殊字符】

-----------------我是分割線----------------------
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT.py]
@=".py_auto_file"

[HKEY_CLASSES_ROOT.py_auto_file]
[HKEY_CLASSES_ROOT.py_auto_file\shell]
[HKEY_CLASSES_ROOT.py_auto_file\shell\open]
[HKEY_CLASSES_ROOT.py_auto_file\shell\open\command]
@="“C:\Program_Base\Python37\python.exe” “%1” %*"

[HKEY_CLASSES_ROOT\Applications\python.exe]
[HKEY_CLASSES_ROOT\Applications\python.exe\shell]
[HKEY_CLASSES_ROOT\Applications\python.exe\shell\open]
[HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command]
@="“C:\Program_Base\Python37\python.exe” “%1” %*"
-----------------我是分割線----------------------

修復(fù)結(jié)果:OK

擴(kuò)展:python2-3腳本共存問(wèn)題

問(wèn)題:

這里有一個(gè)py腳本的調(diào)用問(wèn)題,因?yàn)槟壳皃ython2還有一點(diǎn)需求,選擇打開(kāi)方式是選python2還是選python3?默認(rèn)同時(shí)肯定只有一個(gè)生效的

例如:

如果選的默認(rèn)打開(kāi)方式是python3的exe, 那么【sqlmap.py – u xxx】 肯定是調(diào)用python3執(zhí)行py腳本

解決思路:

把python2的腳本改成.py2 ,然后按上述操作改改注冊(cè)表

詳細(xì)步驟:

1、先指定.py2文件的打開(kāi)方式。2、導(dǎo)入注冊(cè)表文件python2.reg

新建python2.reg 內(nèi)容如下:

【注意:其中C:\Program_Base\Python27\python.exe是我的python2路徑,注冊(cè)表文件中需要斜杠\轉(zhuǎn)義特殊字符】

-----------------我是分割線----------------------
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT.py2]
@=".py2_auto_file"

[HKEY_CLASSES_ROOT.py2_auto_file]
[HKEY_CLASSES_ROOT.py2_auto_file\shell]
[HKEY_CLASSES_ROOT.py2_auto_file\shell\open]
[HKEY_CLASSES_ROOT.py2_auto_file\shell\open\command]
@="“C:\Program_Base\Python27\python.exe” “%1” %*"
-----------------我是分割線----------------------

#缺少的部分屬于重復(fù)部分可以忽略,

實(shí)際刪除[HKEY_CLASSES_ROOT\Applications\python2.exe]鍵值對(duì),也能夠正常運(yùn)行python sqlmap.py -h 和sqlmap.py -h 。

補(bǔ)充知識(shí):Python學(xué)習(xí)之安裝目錄下的python.exe與pythonw.exe文件的區(qū)別

python.exe在運(yùn)行程序的時(shí)候,會(huì)彈出一個(gè)黑色的控制臺(tái)窗口(也叫命令行窗口、DOS/CMD窗口);

pythonw.exe是無(wú)窗口的Python可執(zhí)行程序,意思是在運(yùn)行程序的時(shí)候,沒(méi)有窗口彈出,代碼在后臺(tái)執(zhí)行。

.py和**.pyw**文件的區(qū)別也來(lái)源于python.exe和pythonw.exe的區(qū)別:

安裝 Windows 版 Python 時(shí),擴(kuò)展名為 .py 的文件被默認(rèn)為用 python.exe 運(yùn)行的文件,而 .pyw 文件則被默認(rèn)為用 pythonw.exe 運(yùn)行。

.pyw 格式是被設(shè)計(jì)用來(lái)運(yùn)行開(kāi)發(fā)的純圖形界面程序的,純圖形界面程序的用戶不需要看到控制臺(tái)窗口。在開(kāi)發(fā)純圖形界面程序的時(shí)候,可以暫時(shí)把 .pyw 改成 .py ,運(yùn)行時(shí)能調(diào)出控制臺(tái)窗口,方便看到所有錯(cuò)誤信息。

至于.pyc文件,是Python解釋器運(yùn)行程序的過(guò)程中產(chǎn)生的字節(jié)碼文件(也就是中間生成的文件)。

這里還要解釋一個(gè)問(wèn)題,如果.py文件直接用python.exe打開(kāi),文件被執(zhí)行完成之后,視窗會(huì)立即關(guān)閉,如果想讓視窗停留,給大家提供兩個(gè)方法:

①可以在程序中import time模塊,加入超長(zhǎng)睡眠語(yǔ)句,如time.sleep(1800),如果你不手動(dòng)關(guān)閉視窗,視窗將會(huì)停留30min;

②可以調(diào)用sys和os模塊,使用命令行語(yǔ)句pause(個(gè)人覺(jué)得有些牛刀殺雞的感覺(jué))。

以上這篇解決python便攜版無(wú)法直接運(yùn)行py文件的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

威宁| 富蕴县| 池州市| 同德县| 松滋市| 景泰县| 淳安县| 齐齐哈尔市| 县级市| 吴江市| 安丘市| 合川市| 巨鹿县| 长兴县| 中牟县| 湖南省| 习水县| 静海县| 通许县| 鹤岗市| 兴安盟| 五台县| 鸡泽县| 花莲市| 同德县| 莲花县| 丹凤县| 黄龙县| 九龙坡区| 乌审旗| 故城县| 靖边县| 绍兴市| 饶平县| 奉新县| 长乐市| 综艺| 大邑县| 社会| 普宁市| 弥渡县|