Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 23, 2012 13:24:55

Queeee
От:
Зарегистрирован: 2012-01-18
Сообщения: 42
Репутация: +  -1  -
Профиль   Отправить e-mail  

Функции

Здравствуйте, помогите разобраться с функциями.
Вот кусочек кода :

import serial
import time
import struct
ser = serial.Serial('COM3', 115200,timeout = 1, xonxoff=True, dsrdtr = True, interCharTimeout = True)
d = 0
line = '' + '\n'
time.sleep(3)
print '3 seconds'
ser.write('$CMD,CLEAR\r\n')
print 'just waiting for 15 seconds........'
time.sleep(15)
ser.write('$CMD,CHN,1,MSG,RT3_1001,1\r\n')
line = '                We are testing RTCM messages                        ' + '\n'
def writing_log(): # Ввели функцию записи лога
 ZZZ = open ( 'Data.txt', 'a' )
 print line
 ZZZ.write(line)
 ZZZ.close()
while d < 2000:
  d = d + 1
  try:
    a = ser.readline() + '11111111111111111111111111111111111111111111111' + '\n'
    if a != '' and type(a) == str :
      while indikator <= len(a):
          Preamble = a[indikator]
          if ord(Preamble) == 0xd3:
          line = '\n' + 'Preamble : ' + str(Preamble)+ '\n'
          writing_log() #
Заново вызываю функцию записи в файл, но записывается совсем не то что нужно:((
Если неправильно выразился - у меня через порт поступают сообщения, я вот не хочу каждый раз переписывать
ZZZ = open ( 'Data.txt', 'a' )
 print line
 ZZZ.write(line)
 ZZZ.close()

может тут нужно подключить
 if __name__=__main__
но этой конструкции я вообще не понимаю.




Отредактировано Queeee (Апрель 23, 2012 13:56:28)

Офлайн

#2 Апрель 23, 2012 13:29:53

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Функции

Если ты немедленно не оформишь код по правилам, я пожалуюсь модераторам и тебя забакнят по айпи навсегда.
Задолба!ли



Офлайн

#3 Апрель 23, 2012 13:39:26

Queeee
От:
Зарегистрирован: 2012-01-18
Сообщения: 42
Репутация: +  -1  -
Профиль   Отправить e-mail  

Функции

FishHook
Если ты немедленно не оформишь код по правилам, я пожалуюсь модераторам и тебя забакнят по айпи навсегда.
Задолба!ли
У меня динамичный ай пи, так что жалуйся:)
Какие правила, впервые слышу, если честно; сейчас пропробую что то найти.
Но вот ты, такое ощущение, ждешь, пока кто-то что-то напишет, что бы вставить свои пять копеек.
Кто задолбал, объясни? или ты задрот этого форума…ну прости, что задел тебя, просто для меня этот сайт - заходишь раз в недельку задать вопрос и ответить на несколько тем….



Офлайн

#4 Апрель 23, 2012 13:46:51

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Функции

Queeee, код невозможно читать если в нем нет отступов. Поэтому его нужно оборачивать в тег <code>Код</code>, только используя квадратные скобки. Попробуйте, это не больно.



Офлайн

#5 Апрель 23, 2012 14:01:38

cutwater
От:
Зарегистрирован: 2009-01-08
Сообщения: 444
Репутация: +  19  -
Профиль   Отправить e-mail  

Функции

Queeee
Кто задолбал, объясни? или ты задрот этого форума…ну прости, что задел тебя, просто для меня этот сайт - заходишь раз в недельку задать вопрос и ответить на несколько тем….

А вот переходить на личности не стоит. Таки да код и оформлен и вообще ужасен. Читать невозможно.
А с таким отношением даже если забанят, то отвечать не будут, потому что Вы таки должны сделать все, чтобы понять Вас было проще и относиться с уважением к участникам форума, возможно в прошлом имевших желание Вам помочь.



Офлайн

#6 Апрель 23, 2012 14:24:13

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Функции

Queeee
Здравствуйте, помогите разобраться с функциями.
Вот кусочек кода :
import serial
import time
import struct
ser = serial.Serial('COM3', 115200,timeout = 1, xonxoff=True, dsrdtr = True, interCharTimeout = True)
d = 0
line = '' + '\n'
time.sleep(3)
print '3 seconds'
ser.write('$CMD,CLEAR\r\n')
print 'just waiting for 15 seconds........'
time.sleep(15)
ser.write('$CMD,CHN,1,MSG,RT3_1001,1\r\n')
line = '                We are testing RTCM messages                        ' + '\n'
def writing_log(): # Ввели функцию записи лога
 ZZZ = open ( 'Data.txt', 'a' )
 print line
 ZZZ.write(line)
 ZZZ.close()
while d < 2000:
  d = d + 1
  try:
    a = ser.readline() + '11111111111111111111111111111111111111111111111' + '\n'
    if a != '' and type(a) == str :
      while indikator <= len(a):
          Preamble = a[indikator]
          if ord(Preamble) == 0xd3:
          line = '\n' + 'Preamble : ' + str(Preamble)+ '\n'
          writing_log() #
Заново вызываю функцию записи в файл, но записывается совсем не то что нужно:((
Если неправильно выразился - у меня через порт поступают сообщения, я вот не хочу каждый раз переписывать
ZZZ = open ( 'Data.txt', 'a' )
 print line
 ZZZ.write(line)
 ZZZ.close()

может тут нужно подключить
 if __name__=__main__
но этой конструкции я вообще не понимаю.


Этот код работать не будет.
try без except даст ошибку. Ты как вообще это запустить смог?



Офлайн

#7 Апрель 23, 2012 14:34:44

Queeee
От:
Зарегистрирован: 2012-01-18
Сообщения: 42
Репутация: +  -1  -
Профиль   Отправить e-mail  

Функции

про try знаю, exept в коде присутствует.



Офлайн

#8 Апрель 23, 2012 14:53:52

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Функции

Queeee
про try знаю, exept в коде присутствует.
А вот это у тебя так и есть или ты сюда так запостил?
.....
def writing_log(): # Ввели функцию записи лога
     ZZZ = open ( 'Data.txt', 'a' )
    print line
    ZZZ.write(line)
    ZZZ.close()
while d < 2000:
.....
Точно не
.....
def writing_log(): # Ввели функцию записи лога
     ZZZ = open ( 'Data.txt', 'a' )
    print line
    ZZZ.write(line)
    ZZZ.close()
    while d < 2000:
.....



Офлайн

#9 Апрель 23, 2012 15:00:27

Queeee
От:
Зарегистрирован: 2012-01-18
Сообщения: 42
Репутация: +  -1  -
Профиль   Отправить e-mail  

Функции

Да, в самом начале ввожу функцию писать строку в лог и выводить на экран е же принтом.

def writing_log(): # Ввели функцию записи лога
 ZZZ = open ( 'Data.txt', 'a' )
 print line
 ZZZ.write(line)
 ZZZ.close()
а что не так?



Офлайн

#10 Апрель 23, 2012 15:09:18

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Функции

В мозгах у тебя не так.
Внимательно прочитай мой пост.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version