Я пишу программу, которая открывает и записывает данные, отправленные через последовательный порт, в текстовый файл. В настоящее время я добавляю функции, позволяющие перенастроить последовательный порт во время выполнения. Я предлагаю пользователю выбрать, какую переменную менять по одному, чтобы она была для меня простой (я также был бы признателен за элегантные решения).
Функция pyserial, которая создает последовательный экземпляр (serial.Serial ()), имеет следующие параметры:
import serial
ser = serial.Serial(port=0, baudrate=9600, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=0, rtscts=0, writeTimeout=None, dsrdtr=None, interCharTimeout=None) #default values shown
Я заметил, что хотя большинство из них являются аргументами типа int (), некоторые из них не являются, то есть "timeout".
Я знаю, что использование int(raw_input("for the int() type variables))
позволило бы мне безопасно назначить переменные int, но переменные с None по умолчанию потребовали бы функции input()
для правильного присвоения возможного значения None.
Я читал в другом месте, что input (), как правило, не рекомендуется, так как он потенциально может быть использован (что-то с eval ()?). Как тогда я должен обрабатывать эти входы? то есть, используя serial.Serial (), где writeTimout = str (None) выдает ошибку.
Спасибо!