358606053364644>2019-06-05 21:42:10 +0500 ИК3\x98Н
358606053364644>2019-06-05 21:42:10 +0500 hernya <--- :D
358606053364644>2019-06-05 21:42:10 +0500 ИК3\x98Н
358606053364644>2019-06-05 21:42:10 +0500 \xc8\xca\x33\x98\xcd\x2\x0\x0\xd\xa
358606053364644>2019-06-05 21:42:10 +0500 ready
358606053364644>2019-06-05 21:43:11 +0500 ИКЛМН
if __name__ == '__main__':
with open('mytest.txt', encoding='cp866') as f:
s = f.readline()
print(s)
Pycharm обладает всеми необходимыми данными о структуре проекта, он даже постоянно держит в голове абстрактное синтаксическое дерево всего кода. Стало быть, инспектировать тайп хинты он может и без лишних импортов. Об этом свидетельствует тот факт, что даже если ему указать в импорте не установленный модуль typing, хинтинг сразу начинает работать как положено.
А зачем?
# -*- coding: utf-8 -*-
from typing import Type
class Base(object):
field = 0
class Sub1(Base):
field1 = 1
class Sub2(Base):
field2 = 2
class NotSubclass(object):
field3 = 3
def some_func(cls):
# type: (Type[Base]) -> None
print cls.field
# то выпадающее меню после точки не предлагает список атрибутов нужных классов
some_func(Base)
some_func(NotSubclass) # error indicated
если тут сделать "SomeClass." (поставить точку), то выпадающее меню после точки не предлагает список атрибутов нужных классов
1) Версию Windows;
2) Версию и разрядность питона;
3) Версию PyInstaller;
4) Протокол работы pyinstaller;
5) Код test.py.
P.S. Извините, все телепаты в отпуске.