Python - почему он не читает мои переменные? - PullRequest
1 голос
/ 20 августа 2010

Я новичок в Python и не понимаю, почему он не читает мои переменные IP и ADDR в функции dns.zone.query (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 ]

6 голосов
/ 20 августа 2010

readline() будет включать завершающий перевод строки.Вы можете использовать sys.stdin.readline().strip()

2 голосов
/ 20 августа 2010

Я бы попробовал с:

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

Добавить несколько отпечатков после переменных для его отладки:

print '_%s_' % IP
print '_%s_' % ADDR
2 голосов
/ 20 августа 2010

Попробуйте sys.stdin.readline().strip().Вам необходимо удалить переводы строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...