将IP地址作为输入时出现Python语法错误
我有一个名为sample_ips.txt的文本文件,其中包含一些随机IP地址,如下所示:-将IP地址作为输入时出现Python语法错误,python,Python,我有一个名为sample_ips.txt的文本文件,其中包含一些随机IP地址,如下所示:- 182.0.0.15 182.0.0.16 182.0.0.17 我提供一个IP地址作为输入,以检查它打印的文本文件中是否存在该IP,否则为false 以下是我的代码片段:- ip_input = str(input("Enter IP:")) ip = open("sample_ips", "r") data = ip.readlines() for ips in data: ips = ip
182.0.0.15
182.0.0.16
182.0.0.17
我提供一个IP地址作为输入,以检查它打印的文本文件中是否存在该IP,否则为false
以下是我的代码片段:-
ip_input = str(input("Enter IP:"))
ip = open("sample_ips", "r")
data = ip.readlines()
for ips in data:
ips = ips.strip("\n")
if ip_input in ips:
print "true"
else:
print "false"
它抛出了一个语法错误
File "<string>", line 1
182.0.0.15
^
SyntaxError: invalid sytanx
文件“”,第1行
182.0.0.15
^
SyntaxError:无效的sytanx
我认为它不能将输入作为字符串,尽管我在代码中将其声明为字符串。有什么帮助吗?
谢谢好吧,这很有效:
input = raw_input("Enter IP:")
ip = open("sample_ips.txt", "r")
data = ip.readlines()
for ips in data:
ips = ips.strip("\n")
if input in ips:
print "true"
else:
print "false"
:编辑:
Python3版本
input = input("Enter IP:")
ip = open("sample_ips.txt", "r")
data = ip.readlines()
for ips in data:
ips = ips.strip("\n")
if input in ips:
print ("true")
else:
print ("false")
使用
raw\u input
notinput
。我做了,它在@AshwiniChaudharyFYI不起作用,你不应该在这里使用input()-根据,input函数将执行任何用户编写的python代码,这不是你想要的。它给出TypeError:强制使用Unicode:需要字符串或缓冲区,元组查找你使用的python,2还是3?这在Python2上运行得很好。我现在正在使用Python3。Python2中的工作原理与Python2中的工作原理相同。对于Python2和Python3,该解决方案都适用于我。您需要使用原始输入,因为输入尝试将输入作为python代码进行计算。
input_ip = raw_input("Enter IP:") # In python 2.x. If you use input() then type your inputs as string (>>Enter IP:"182.0.0.15")
#input_ip = input("Enter IP:") for python 3.x
with open("ip.txt", "r") as ip:
data = ip.readlines()
for ips in data:
ips = ips.strip("\n")
if input_ip in ips:
print ("true")
else:
print ("false")