2017-02-21 5 views
-1

Вот код, который я скопировать из другого файла .py, и я получил TypeErrorPython TypeError из ОЗЛ, что я скопировать из другого файла .py

#coding:utf-8 
import serial 
import sys 
import time 
import logging 

class TestRemoteControl(object): 
    def __init__(self,com): 
     self.ser = serial.Serial(com,115200) 
     self.ser.bytesize = 8 
     self.ser.stopbits = 1 
     self.logger = logging.getLogger() 
     self.logger.setLevel(logging.INFO) 
     self.formatter = logging.Formatter('%(asctime)-25s - %(name)s - %(levelname)s - %(message)s') 
     self.ch = logging.StreamHandler() 
     self.ch.setLevel(logging.INFO) 
     self.fh = logging.FileHandler('Test.txt') 
     self.fh.setLevel(logging.INFO) 
     self.fh.setFormatter(self.formatter) 
     self.ch.setFormatter(self.formatter) 
     self.logger.addHandler(self.ch) 
     self.logger.addFilter(self.fh) 

    def start_esc(self): 
     self.logger.info("开启电机") 
     self.ser.write("####1") 

    def stop_esc(self): 
     self.logger.info("关闭电机") 
     self.ser.write("####1") 
     time.sleep(0.4) 
     self.ser.write("####1") 
     time.sleep(0.4) 
     self.ser.write("####1") 
     time.sleep(0.4) 


    def speed_up(self): 
     self.logger.info("电机加速") 
     self.ser.write("####3") 

    def speed_down(self): 
     self.logger.info("电机减速") 
     self.ser.write("####2") 

def main(): 
    logging.basicConfig(level=logging.DEBUG, 
     format = '%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', 
     datefmt = '%a, %d %b %Y %H:%M:%S', 
     filename = 'myapp.log', 
     filemode = 'w') 

    print("please enter com num:") 
    a = raw_input() 

    temp_com = "com"+a 
    test_RC = TestRemoteControl(temp_com) 
    count = 1 
    max_count = int(raw_input('Please enter on-off counts')) 
    while count < max_count: 
     test_RC.start_esc() 
     # time.sleep(10) 
     # test_RC.speed_up() 
     time.sleep(2) 
     test_RC.stop_esc() 
     print "complete ",count," times " 
     time.sleep(1) 
     count += 1 

if __name__ == "__main__": 
    main() 

Вот ошибка, я не Kown Зачем. Помоги мне, пожалуйста. TypeError:

unbound method init() must be called with TestRemoteControl instance as first argument (got nothing instead)

ответ

0

Этот код OK.All проблема является IDE «PyCharm», что я могу только запустить UnitTest, потому что я использовал имя «TestRemoteControl»

Смежные вопросы