The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
В цикле while не работает второе условие, !*! qazarus, 30-Авг-15, 12:59  [смотреть все]
Итак, есть железка, при подключении отображается дев, в который мне нужно отсылать команду, и слушать ответ. Для этого использую такой вот скрипт:


f = open("/dev/skynet", "r+")
data = ''
print >> f, "run\r\n"
while data[:8]!="doomsday":
    data=f.readline()
print data
f.close

Все работает, но за некоторых условий ответа не следует, в итоге скрипт зависает в ожидании долгожданного ответа. Вот эту проблему мне и надо решить.
Так как с питоном познакомился чуть ли не вчера, я не придумал ничего умнее, как добавить к циклу отсчет так сказать, и в случае 10 считывания строки отрубать цикл:


f = open("/dev/skynet", "r+")
data = ''
count = 10
print >> f, "run\r\n"
while (data[:8]!="doomsday") or (count != 0):
    data=f.readline()
    count = count - 1
print data
f.close

Ну так вот, не работает это. В итоге не работает второй аргумент, да еще и перестает работать первый.
Дайте совет как исправить это, или как сделать покрасивее.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру