【发布时间】:2012-05-01 08:10:12
【问题描述】:
我需要让我的 Python 程序打开一个文件,使用其中的一些数据,然后输出一个不同的文件。我有几个问题,并希望是否有人可以明确地告诉我它们是否基于权限,如果是,如何解决它们。我的 Python 程序通过终端运行。
以下是我发现的一些不起作用的地方:
import matplotlib.pyplot
infile = open('/correct_pathway/textfile1.txt','r')
outfile = open('/correct_pathway/textfile2.txt','w')
它在所有这些方面都有问题。我不知道导入模块时可能存在权限问题,但确实存在。此外,它试图打开的文件是全局可读/可写的。
编辑:抱歉,这无意中含糊不清,并且代码中有一个实际上并不存在的错字。网页上写的PHP代码如下(如果我调用一个更简单的python程序就可以了,所以我可以想到这里没有问题):
<?php $command= '/usr/bin/python /correct_pathway/program.py';
$temp = exec($command, $output);
print_r($temp); ?>
该代码应该打开 infile,从中读取一个数字,然后将该数字写入 outfile 并打印出一个不同的数字。打印的号码应显示在网页上。这一切都可以通过终端正常工作,而不是在网页上。
提前致谢!
【问题讨论】:
-
你正在通过 php 运行它(如在 exec 中?)
-
这里到底是怎么涉及php的?这段代码应该可以工作吗?因为它显然使用了未绑定的变量!
-
我怀疑是拼写错误,但您在定义
$command的 PHP 行末尾缺少引号和分号。 -
抱歉,修正了拼写错误,这在其他人看来是权限问题吗?我无法直接访问 python 模块来自己更改它们,但如果这是问题,我可以告诉技术人员为我做这件事。谢谢!
-
是的,可能是权限问题:PHP 进程是否可以运行 Python 程序? PHP 进程是否有权写入 Python 程序的输出文件?请注意,其中一些可能会受到 Web 服务器软件和 PHP 的权限的影响,而不仅仅是文件权限。
标签: php python permissions