首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在for循环中调用pyuic4以生成所有py文件|从python中调用.bat

在for循环中调用pyuic4以生成所有py文件|从python中调用.bat
EN

Stack Overflow用户
提问于 2019-05-02 20:23:51
回答 1查看 62关注 0票数 0

我想创建一个简短的脚本,循环遍历文件夹中的所有.ui和.qrc文件,并分别为每个文件调用pyuic4和pyrcc4,从而生成相应的.py文件。

几个月后,在我学到了更多的python之后编辑:

代码语言:javascript
复制
import shutil
import os


# pyrcc5 pixels.qrc -o pixels_rc.py && pyuic5 mainWindowGUI.ui -o MainWindowGUI.py && pyuic5 titleBarGUI.ui -o TitleBarGUI.py

command = 'pyrcc5 pixels.qrc -o pixels_rc.py'

for file in os.listdir(os.getcwd()):
    if file.endswith('ui'):
        filename = file.split('.')[0]
        command = f'{command} && pyuic5 {filename}.ui -o {filename}.py'

print(f'\n Executing: {command} \n')

try:
    result = os.system(command)
    if result is 0:
        pass
except Exception as e:
    print('Error {e}')

print('\n Done.')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-01 13:42:18

代码语言:javascript
复制
from pathlib import Path
import os

# generate something like this and the run it
# @echo off
# pyrcc5 pixels.qrc -o pixels_rc.py && pyuic5 window.ui -o window.py && pyuic5 dialog.ui -o dialog.py

command = f'pyrcc.exe Design/pixels.qrc -o GeneratedFiles/pixels_rc.py'

for file in os.listdir(Path(os.getcwd()+'/Design')):
    if file.endswith('ui'):
        filename = file.split('.')[0]
        command = command + f" && pyrcc.exe Design/{filename}.ui -o GeneratedFiles/{filename}.py"

try:
    result = os.system(command)
    if result == 0:
        pass
except Exception as e:
    print('Error {e}')

print('\n Done.')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55952397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档