2016-06-14 289 views
-2

我是一名刚接触python的学生,需要完成一个python程序才能完成作业。该计划的目标是在新闻标题列表中找到一些目标字符串。如何在python的命令行输入#

例如,有一个文件写有新闻标题列表。当我在命令行输入:

“蟒蛇hw3.py奥巴马#特朗普,日本动漫#,炉石#监工new_list.txt”,

程序将返回既具有“奥巴马图书的数字“和”特朗普“,还有”日本“和”动漫“等等。

但是,当我调试我的程序时,似乎命令行无法读取符号“#”,因为#后面的单词全部是红色的,并且进入该行时的结果变为“错误:语法无效”。

问题是由“#”符号引起的吗?因为输入“#”是任务的要求,所以我必须找到一种方法来使其正确。或者问题是由其他原因引起的?

的代码是在这里:

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,所以shell不会试图解释它们 'python hw3.py“奥巴马#特朗普,日本#动漫,炉石#守望先锋”new_list.txt' –

回答