3

Add to python path mac os xを読んで、それを行うのは良い考えだと思いましたが、それでも IDLE は の単純な呼び出しの構文エラーを返すopen(filename, mode)ので、もう少し調べたところ、できることがわかりましたhttp://developer.apple.com/library/mac/#qa/qa1067/_index.htmlに記載されているように、.MacOSXフォルダーにenvironment.plistを設定したので、ホームディレクトリでそれを行いましたが、まだ変更はありません...私は今迷っています:-)

それは、.bash_profile に python-path として追加し、environment.plist に同じパスを追加したものです (:$PYTHONPATH なし):

PYTHONPATH="/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7:$PYTHONPATH"
export PYTHONPATH

編集:構文エラーが発生する場所です...インタープリターで正常に動作します

import xml.etree.ElementTree as et 
import json

app = Bottle()

@app.route('/proPass', method ='POST')

#here happens here, need it further down in the code... which is not really relevant 
f = open('/Users/mohi/Desktop/proPass_project/server_service/systems.xml', 'rw')

def getData():
    timestamp = request.POST.get('timestamp', '').strip()
    data = request.POST.get('data', '').strip()

    if timestamp:
        processData(data, timestamp)
run()

エラー:

    File "proPass_script.py", line 9
    f = open('/Users/mohi/Desktop/proPass_project/server_service/systems.xml', 'rw')
    ^
    SyntaxError: invalid syntax

4

1 に答える 1

3

PYTHONPATHを取得するかどうかには影響しませんSyntaxError-- のみImportError。したがって、 が表示される場合はSyntaxError、コードに別の問題があります。コードを投稿してください。指摘させていただきます。

編集:あなたのエラーはこの行にあります:

@app.route('/proPass', method ='POST')

は関数定義 ( )、クラス定義 ( )、または別のデコレーター@の直前の行でのみ有効なデコレーターを指定します。defclass

open関数またはクラスの定義が必要なため、行の最初の文字にエラーが表示されます。

デコレータの詳細については、関数定義のドキュメントを参照してください。

于 2011-08-17T09:26:32.213 に答える