2012-04-19 87 views
1

我需要讓我的Python程序打開一個文件,使用其中的一些數據,並吐出一個不同的文件。我有幾個問題,並希望如果有人能夠明確告訴我他們是否基於權限,如果是的話,如何解決這些問題。我的Python程序通過終端工作。通過PHP使用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以及打印出不同的數字。打印的號碼應顯示在網頁上。這一切都可以通過終端正常工作,而不是在網頁上。

在此先感謝!

+0

你是通過php運行這個(如exec?) – encodes 2012-04-19 18:25:43

+1

php在這裏如何介入?這個代碼*應該*工作嗎?因爲它顯然使用了未綁定的變量! – 2012-04-19 18:26:21

+0

我懷疑有一個錯字,但是在定義'$ command'的PHP行末尾缺少一個引號和分號。 – GreenMatt 2012-04-19 18:47:53

回答

0

要定義如何打開文件,即讀或寫,語法是用引號括住r或w。所以你的上面的代碼應該如下所示。

import matplotlib.pyplot 
infile = open('/correct_pathway/textfile1.txt','r') 
outfile = open('/correct_pathway/textfile2.txt','w') 

看看您是否可以使用添加的引號訪問文件。