Python - 为什么不读取我的变量?

时间:2010-08-19 20:44:03

标签: python variables function

我是一个python新手,我不明白为什么它不会在函数dns.zone.query(IP,ADDR)中读取我的IP和ADDR变量???

import dns.query
import dns.zone
import sys

IP = sys.stdin.readline()
ADDR = sys.stdin.readline()


z = dns.zone.from_xfr(dns.query.xfr(IP , ADDR))
names = z.nodes.keys()
names.sort()
for n in names:
    print z[n].to_text(n)

当我传递一个实际的IP和域时,它有效,但没有变量...我不知道是什么问题?

3 个答案:

答案 0 :(得分:6)

readline()将包含一个尾随换行符。您可以使用sys.stdin.readline().strip()

答案 1 :(得分:2)

试试sys.stdin.readline().strip()。您需要删除换行符。

答案 2 :(得分:2)

我会尝试:

IP = sys.stdin.readline().strip()
ADDR = sys.stdin.readline().strip()

在变量之后添加一些打印件进行调试:

print '_%s_' % IP
print '_%s_' % ADDR