python - 如何使用子进程检查用户的平台并在 Python 脚本中运行相应的命令?
问题描述
我需要执行一个因用户平台而异的命令。我目前在 Python 脚本中以这种方式设置它:
import platform
user_sys = platform.system()
if user_sys == 'Linux' or 'Darwin':
cmd = "cat file1 file2..."
elif user_sys == 'Windows':
cmd = "type file1 file2..."
subprocess.run(split(cmd)) # run on command line
问题
- 有没有更好的基于用户平台的执行方式?
- 为操作系统制作两个单独的程序而不是尝试将它们全部组合在一个脚本中会更明智/传统吗?
解决方案
不,他们不是提取此信息的更好方法,他们不需要多伙伴脚本。
这就是我建议你可以改进的地方
from sys import platform as _platform
if _platform == "linux" or _platform == "linux2":
# linux
elif _platform == "darwin":
# MAC OS X
elif _platform == "win32":
# Windows
elif _platform == "win64":
# Windows 64-bit
推荐阅读
- visual-studio-code - 如何在另存为对话框中添加新的文件类型过滤器
- c - mac的多点触控代码
- scala - 将异常结果转换为迭代器
- swift - 可以创建从视图控制器的角落出现的 UITableView
- c - “使用带二进制位运算符的有符号整数操作数” - 使用无符号短时
- c# - 设置 ShowDialog 的 UIaccess 更改行为
- node.js - 可以在 package.json 的 devdependencies 中包含 npm 吗?
- google-bigquery - 如何从 BigQuery 的公共数据集中找到每个女性名字在 1910 年的最高出现率和相应状态
- regex - XQuery MarkLogic 中的模式或格式匹配
- asp.net - Web.config/app.config 元素 configSections 在 DotNet4.5 中是否已弃用?