Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中键入#';谁的命令行?_Python - Fatal编程技术网

如何在python中键入#';谁的命令行?

如何在python中键入#';谁的命令行?,python,Python,我是一名python新手,需要完成一个python程序来完成作业。该程序的目标是在新闻标题列表中找到一些目标字符串 例如,有一个用新闻标题列表编写的文件。在命令行中键入此命令时: “python hw3.py Obama#特朗普,日本#动漫,炉石#Overwatch new#list.txt” 该程序将返回同时包含“奥巴马”和“特朗普”以及同时包含“日本”和“动漫”的标题数量,以此类推 但是,当我调试程序时,命令行似乎无法读取符号“#”,因为#之后的单词都是红色的,输入该行时的结果是“错误:语法

我是一名python新手,需要完成一个python程序来完成作业。该程序的目标是在新闻标题列表中找到一些目标字符串

例如,有一个用新闻标题列表编写的文件。在命令行中键入此命令时:

“python hw3.py Obama#特朗普,日本#动漫,炉石#Overwatch 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

如果您希望在python shell中使用参数执行文件: 您只需使用:subprocess.call(['./abc.py',arg1,arg2])
供参考:

您使用什么操作系统和哪个终端?您还应该使用更新您的问题,因为我在Windows中没有此问题。您使用的是什么命令行?windows命令?动力地狱?空闲?
print sys.argv
检查参数是否正确地从shell传递到Python。我打赌不是。你得到的错误看起来像是python解释器给出的错误,所以你要启动一个交互式python会话,然后在
>
提示符下键入所有
python hw.py…
?在windows cmd提示符或powershell中尝试。设置您的需求的人需要接受教育,即
#
是一个注释符号,在许多shell中,它在被忽略后意味着一切,他们的无知在他们的需求中表现出来。