Windows命令提示符无法在Python中工作

2024-04-30 17:34:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从python获得以下命令(手动输入关闭mysql服务器时有效)。你知道吗

我正在运行的代码行是:

os.system('"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqladmin" -u demo -pdemopw shutdown')

你知道为什么在命令提示符下,而不是在操作系统,我该怎么修?你知道吗


Tags: 代码命令binserverosdemomysqlfiles
2条回答

在使用Windows文件\文件夹路径时,我几乎总是使用原始字符串。举个例子:

sql_admin = r"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqladmin"

注意字符串开头的r。这会把字符串变成原始字符串。如果不这样做,Python将查看特殊字符的反斜杠,例如\n(新行)、\t(tab)或\b(反斜杠)。你有后者在你的弦。你知道吗

找出发生了什么的一种方法是尝试在解释器中打印字符串。请看以下示例:

>>> "C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqladmin"
'C:\\Program Files\\MySQL\\MySQL Server 5.1\x08in\\mysqladmin'

>>> r"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqladmin"
'C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysqladmin'

使用原始字符串有两种选择。第一个是避开反斜杠:

>>> "C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysqladmin"

我总是觉得这有点难看,也有点难读。也可以将反斜杠替换为正斜杠:

>>> "C:/Program Files/MySQL/MySQL Server 5.1/bin/mysqladmin"

这将工作,虽然它看起来有点奇怪,如果你是一个Windows的家伙。所以最后,我还是建议使用原始字符串。你知道吗

试着把\改成/,它应该可以工作。你知道吗

相关问题 更多 >