Python 使用原始输入,不使用';不能产生结果

Python 使用原始输入,不使用';不能产生结果,python,loading,raw-input,Python,Loading,Raw Input,使用时 first = raw_input('mol bio results + count') f1 = open(first,'r') f1data = f1.readlines() second = raw_input('physics journal list') f2 = open(second,'r') f2data = f2.readlines() total = 0 for line1 in f1data: i = 0 for line2 in f2data:

使用时

first = raw_input('mol bio results + count')
f1 = open(first,'r')
f1data = f1.readlines()

second = raw_input('physics journal list')
f2 = open(second,'r')
f2data = f2.readlines()


total = 0
for line1 in f1data:
 i = 0
 for line2 in f2data:
    if line1 in line2:
        i+=1
        total+=1
 print line1 + str(i) + "\n"

print total
它只在屏幕上写第一个文件的名称(“mol bio results+count”),而不写任何其他内容,同时永远保持加载。 我的代码错了吗?这两个文件都显示在显示我正在使用的文件夹的位置。
谢谢。

我已经在我的系统上试用了你的代码。raw_input()工作正常。确保您的代码与您使用的python版本一致。或者你的python坏了,可能是有什么东西阻止python访问你的文件。在这种情况下,请检查您是否有足够的权限读取该文件

我已经在我的系统上尝试了你的代码。raw_input()工作正常。确保您的代码与您使用的python版本一致。或者你的python坏了,可能是有什么东西阻止python访问你的文件。在这种情况下,请检查您是否有足够的权限读取该文件

raw_input将字符串打印为提示,并等待输入和输入

我不知道您的python有多新,但我选择的语法将为您处理文件关闭(除其他外)

为了清晰起见,我还对一些变量进行了重新格式化和重命名

print("Please enter the file name for mol bio results + count")
first = raw_input('(Type it here and press enter) : ')

print("Please enter the file name for physics journal list")
second = raw_input(': ')

with open(first, 'r') as f1:
    f1data = f1.readlines()

with open(second, 'r') as f2:
    f2data = f2.readlines()

total = 0
for f1line in f1data:
    i = 0
    # print(len(f1line))
    for f2line in f2data:
        # print(len(f2line))
        if f1line.rstrip() in f2line:
            i += 1
            total += 1
    print f1line + ':' + str(i) + "\n"

print total

raw_input将字符串打印为提示,并等待输入和输入

我不知道您的python有多新,但我选择的语法将为您处理文件关闭(除其他外)

为了清晰起见,我还对一些变量进行了重新格式化和重命名

print("Please enter the file name for mol bio results + count")
first = raw_input('(Type it here and press enter) : ')

print("Please enter the file name for physics journal list")
second = raw_input(': ')

with open(first, 'r') as f1:
    f1data = f1.readlines()

with open(second, 'r') as f2:
    f2data = f2.readlines()

total = 0
for f1line in f1data:
    i = 0
    # print(len(f1line))
    for f2line in f2data:
        # print(len(f2line))
        if f1line.rstrip() in f2line:
            i += 1
            total += 1
    print f1line + ':' + str(i) + "\n"

print total

你输入什么了吗?打印
mol bio results+count
时,程序需要用户提供一些输入,这些输入将在按下Enter键后首先存储在变量
first
中。变量
second
也是如此。是的,我同意@albert。这可能是因为代码需要第一个和第二个输入值。此外,输入必须是有效的文件名,因为它将传递给
open()
调用。您输入了什么吗?打印
mol bio results+count
时,程序需要用户提供一些输入,这些输入将在按下Enter键后首先存储在变量
first
中。变量
second
…也是如此。我同意@albert。这可能是因为代码要求输入第一个和第二个值。此外,输入必须是有效的文件名,因为它将传递给
open()
call。修复了一些错误粘贴并添加了rstrip以允许子字符串匹配。修复了一些错误粘贴并添加了rstrip以允许子字符串匹配。