Когда я отлаживал код c, я всегда использую 'gdb a.out < test' для перенаправления стандартного потока ввода. Но когда дело доходит до pdb
, я нашел, что он не работает. После поиска в pdb help doc я все еще не могу найти что-то относительно этой проблемы.Как перенаправить стандартный ввод при отладке python?
EDIT: Я размещаю свой код. Можете ли вы помочь мне изменить его для чтения из файла с минимальной модификацией. Благодарю.
cnt = int(raw_input())
paths = []
for cs in range(cnt):
action, path = map(None, (raw_input() + " dumb").split(" ", 1))
if (action == "pwd"):
print "/",
for p in paths:
print p + "/",
print
else:
strs = path.split("/")
for i in range(len(strs)):
p = strs[i]
if (p == ""):
continue
if (p == ".."):
paths.pop()
else:
paths.append(p)
Почему ты необходимо перенаправить стандартный поток ввода? Возможно, мы могли бы помочь вам с основной проблемой. –
Я работаю над проблемой ACM. Поэтому мне нужно импортировать тестовые данные в свою программу. –
Код Python легче изменить, чем пытаться сделать pdb делать то, что вы хотите в этом случае; просто загрузите вход из файла, а не из sys.stdin. –