亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用Python編寫一個粘貼python源代碼就能運(yùn)行的工具

 更新時間:2025年04月15日 09:39:50   作者:winfredzhang  
以下是一個使用wxPython模塊創(chuàng)建帶有Memo(文本輸入框)和保存按鈕的GUI程序示例,點(diǎn)擊保存按鈕后將Memo內(nèi)容保存到指定路徑下的文件,并提供運(yùn)行按鈕以執(zhí)行指定的Python腳本,需要的朋友可以參考下

源代碼

import wx
import os
import subprocess

class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(parent=None, title="Memo Save and Run", size=(500, 400))
        panel = wx.Panel(self)
        
        # 創(chuàng)建布局
        vbox = wx.BoxSizer(wx.VERTICAL)
        
        # 創(chuàng)建Memo(多行文本框)
        self.memo = wx.TextCtrl(panel, style=wx.TE_MULTILINE, size=(480, 200))
        vbox.Add(self.memo, proportion=1, flag=wx.EXPAND | wx.ALL, border=10)
        
        # 保存按鈕
        save_btn = wx.Button(panel, label="保存")
        save_btn.Bind(wx.EVT_BUTTON, self.on_save)
        vbox.Add(save_btn, flag=wx.ALIGN_CENTER | wx.ALL, border=5)
        
        # 運(yùn)行按鈕
        run_btn = wx.Button(panel, label="運(yùn)行")
        run_btn.Bind(wx.EVT_BUTTON, self.on_run)
        vbox.Add(run_btn, flag=wx.ALIGN_CENTER | wx.ALL, border=5)
        
        panel.SetSizer(vbox)
        
        # 保存路徑
        self.save_path = "output.py"  # 指定保存路徑
        
    def on_save(self, event):
        # 獲取Memo內(nèi)容并保存到文件
        content = self.memo.GetValue()
        try:
            with open(self.save_path, 'w', encoding='utf-8') as f:
                f.write(content)
            wx.MessageBox(f"文件已保存到 {self.save_path}", "成功")
        except Exception as e:
            wx.MessageBox(f"保存失敗: {str(e)}", "錯誤")
    
    def on_run(self, event):
        # 使用python命令運(yùn)行保存的py文件
        if os.path.exists(self.save_path):
            try:
                result = subprocess.run(['python', self.save_path], capture_output=True, text=True)
                output = result.stdout + result.stderr
                wx.MessageBox(f"運(yùn)行結(jié)果:\n{output}", "運(yùn)行輸出")
            except Exception as e:
                wx.MessageBox(f"運(yùn)行失敗: {str(e)}", "錯誤")
        else:
            wx.MessageBox("文件不存在,請先保存!", "錯誤")

if __name__ == "__main__":
    app = wx.App()
    frame = MyFrame()
    frame.Show()
    app.MainLoop()

功能說明:

  1. 界面

    • 包含一個多行文本框(Memo),用于輸入Python代碼。
    • 包含“保存”按鈕,用于將Memo內(nèi)容保存到指定路徑(output.py)。
    • 包含“運(yùn)行”按鈕,用于執(zhí)行保存的Python腳本。
  2. 保存功能

    • 點(diǎn)擊“保存”按鈕,Memo中的內(nèi)容會保存到self.save_path指定的文件(默認(rèn)為output.py)。
    • 保存成功或失敗會彈出提示框。
  3. 運(yùn)行功能

    • 點(diǎn)擊“運(yùn)行”按鈕,使用subprocess.run調(diào)用python命令運(yùn)行保存的output.py文件。
    • 運(yùn)行結(jié)果(標(biāo)準(zhǔn)輸出和錯誤輸出)會顯示在彈出的消息框中。
    • 如果文件不存在或運(yùn)行失敗,會顯示錯誤提示。

使用方法:

  1. 運(yùn)行上述代碼,出現(xiàn)GUI窗口。
  2. 在Memo中輸入Python代碼,例如:
print("Hello, wxPython!")
  1. 點(diǎn)擊“保存”按鈕,內(nèi)容會保存到output.py。
  2. 點(diǎn)擊“運(yùn)行”按鈕,程序會執(zhí)行output.py并顯示輸出(如Hello, wxPython!)。

注意事項:

  • 確保系統(tǒng)已安裝Python并配置好環(huán)境變量,以便subprocess可以調(diào)用python命令。
  • 保存路徑output.py可根據(jù)需要修改為其他路徑(如self.save_path = "C:/path/to/your/file.py")。
  • 運(yùn)行的腳本需要是合法的Python代碼,否則會顯示錯誤信息。
  • 文件保存和運(yùn)行時使用了utf-8編碼,確保輸入內(nèi)容兼容。

運(yùn)行結(jié)果

到此這篇關(guān)于使用Python編寫一個粘貼python源代碼就能運(yùn)行的工具的文章就介紹到這了,更多相關(guān)Python源代碼運(yùn)行工具內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python實現(xiàn)數(shù)組平移K位問題

    python實現(xiàn)數(shù)組平移K位問題

    這篇文章主要介紹了python實現(xiàn)數(shù)組平移K位問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python+OpenCV實現(xiàn)信用卡數(shù)字識別的方法詳解

    Python+OpenCV實現(xiàn)信用卡數(shù)字識別的方法詳解

    這篇文章主要介紹了如何利用python?opencv實現(xiàn)信用卡數(shù)字識別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-09-09
  • Python讀csv文件去掉一列后再寫入新的文件實例

    Python讀csv文件去掉一列后再寫入新的文件實例

    下面小編就為大家分享一篇Python讀csv文件去掉一列后再寫入新的文件實例,具有很的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Python使用迭代器打印螺旋矩陣的思路及代碼示例

    Python使用迭代器打印螺旋矩陣的思路及代碼示例

    用Python的itertools模塊來創(chuàng)建具有迭代功能的函數(shù)十分具有技巧性,這里我們就來看一下借助itertools模塊、Python使用迭代器打印螺旋矩陣的思路及代碼示例
    2016-07-07
  • Python實現(xiàn)APP自動化發(fā)微信群消息的示例代碼

    Python實現(xiàn)APP自動化發(fā)微信群消息的示例代碼

    本文主要介紹了Python實現(xiàn)APP自動化發(fā)微信群消息的示例代,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下碼
    2022-01-01
  • Python中的numpy數(shù)組維度擴(kuò)展詳解

    Python中的numpy數(shù)組維度擴(kuò)展詳解

    這篇文章主要介紹了Python中的numpy數(shù)組維度擴(kuò)展詳解,在numpy數(shù)組中,切片功能非常常用,例如x[:]表示取x的所有元素,可以通過在切片中增加None或者np.newaxis實現(xiàn),它們的作用就是在相應(yīng)的位置上增加一個維度,在這個維度上只有一個元素,需要的朋友可以參考下
    2023-09-09
  • Python可視化神器pyecharts繪制水球圖

    Python可視化神器pyecharts繪制水球圖

    這篇文章主要介紹了Python可視化神器pyecharts繪制水球圖,水球圖首先是動態(tài)的效果,像水流一樣波動,所以看起來比較的舒服,一般用于業(yè)務(wù)里面的完成率,其實和之前的儀表盤有點(diǎn)類似
    2022-07-07
  • python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法

    python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法

    本文主要介紹了python用pyinstaller封裝exe雙擊后瘋狂閃退解決辦法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Python基于PycURL實現(xiàn)POST的方法

    Python基于PycURL實現(xiàn)POST的方法

    這篇文章主要介紹了Python基于PycURL實現(xiàn)POST的方法,涉及Python實現(xiàn)curl傳遞post數(shù)據(jù)的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Python字符串格式化%s%d%f詳解

    Python字符串格式化%s%d%f詳解

    這篇文章主要介紹了Python字符串格式化%s%d%f詳解,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02

最新評論