首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python os.system问题

Python os.system问题
EN

Stack Overflow用户
提问于 2014-04-01 03:49:52
回答 3查看 1.4K关注 0票数 0

我正在写一个程序,你需要输入一个文件的标题。如果要删除该文件,请使用ss "rm name_of_file“命令。以下是我的代码:

代码语言:javascript
复制
    import os
    title = raw_input("What Will Your Title Be? ")
    os.system("rm", title)

正如你可能想象的那样,这只是我正在编写的程序的一小部分。我得到的错误是:

代码语言:javascript
复制
    File "./texts.py", line 1446, in <module>
    os.system("rm", title)
    TypeError: system() takes exactly 1 argument (2 given)

我可能只是用错了字眼,一些反馈会有所帮助:)

EN

回答 3

Stack Overflow用户

发布于 2014-04-01 03:51:07

逗号将其分隔为两个参数,因此您会得到该错误,因为该函数只有一个参数。更改它,这样您就可以添加到相同的字符串中,从而只提交一个参数来使其工作:

代码语言:javascript
复制
os.system("rm "+title)
票数 2
EN

Stack Overflow用户

发布于 2014-04-01 03:58:49

这将非常难以安全地实现。考虑一下有人键入-rf /作为要删除的文件名的情况。I'd 强烈建议使用os.unlink函数:

代码语言:javascript
复制
>>> import os
>>> os.unlink('-rf /')
...
OSError: [Errno 2] No such file or directory: '-rf /'

你自己尝试这是一个危险的操作。让标准库为您完成繁重的工作。

票数 0
EN

Stack Overflow用户

发布于 2014-04-01 03:59:20

你为什么不干脆

代码语言:javascript
复制
if os.path.isfile(title):
    os.remove(title)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22770883

复制
相关文章

相似问题

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