2016-06-14 6 views
-2

私はPythonを初めて使い、割り当てのためのPythonプログラムを終了する必要がある学生です。このプログラムの目標は、ニュース・タイトルのリスト内のいくつかのターゲット文字列を見つけることです。Pythonのコマンドラインで#を入力する方法は?

例えば、ニュースタイトルのリストで書かれたファイルがあります。私は、コマンドラインでこれを入力すると:

「パイソンhw3.pyオバマ#トランプ、日本の#アニメ、だんらん#オーバーウォッチのnew_list.txt」、

プログラムは、両方の「オバマを持っているタイトルの番号を返します。 「トランプ」、「日本」と「アニメ」の両方を持っているものなどがあります。

しかし、自分のプログラムをデバッグしているとき、#の後にある単語がすべて赤で、行を入力すると結果が "Error:syntax invalid "

"#"記号が原因で問題が発生しましたか? "#"の入力は割り当ての要件であるため、正しい方法を見つける必要があります。または、他の理由で問題が発生しましたか?

import sys 

if len(sys.argv) < 3: 
    print 'no argument' 
    sys.exit() 

f = open(sys.argv[2], 'r', encoding = 'UTF-8') 

words = sys.argv[1].split(',') 
count = len(words) 
for i in range(0, count, 1): 
    yes[count] = 0 
    word = words[count].decode('utf-8').split('#') 
    while True : 
     x = f.readline() 
     if x == '': 
      break 
     #print(x,end='') 

     else if (word[0] in x) and (word[1] in x): 
      yes[count] += 1 


for j in range (0, count, 1): 
    t = max(yes) 
    for jk in range (0, count, 1): 
     if yes[jk] == t: 
      print words[jk] + ',' + yes[jk] 
      yes[jk] = -1 
      break 


f.close() 

とメッセージはここにある::

コードはここにある

Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:32:19) [MSC v.1500 32 bit (Intel)] on win32 
Type "copyright", "credits" or "license()" for more information. 
>>> python TocHW3.py 馬英九#蔡英文 new_sample.txt 
SyntaxError: invalid syntax 
+2

どのオペレーティングシステムを使用していますか? – DomTomCat

+0

Windows 10、Python 2 – Limoncool

+0

あなたのargsを引用符で囲むだけで、シェルはそれらを解釈しようとしません 'python hw3.py" Obama#トランプ、日本#アニメ、Hearthstone#オーバーウォッチ "new_list.txt" –

答えて

0

あなたはパラメータを使用してPythonシェルでファイルを実行したい場合: あなたは、単に使用することができます:subprocess.call(['./ abc.py'、arg1、arg2])参考:Execute a file with arguments in Python shell

関連する問題