tokenizator's People
tokenizator's Issues
Параметры=аргументы бывают у метода, а не у класса
Lines 16 to 19 in 86f207f
В документации класса приведены параметры метода, так быть не должно
А где определена переменная database_exists? Такое ощущение, что сейчас -- нигде...
Line 26 in b19fb3f
elif, видимо, относится к if, но "os.remove(i)" между ними разбивает эту конструкцию; необходим отсутуп
Lines 33 to 36 in b19fb3f
PEP8: keyword-параметры должны оформляться без пробелов вокруг знака '='
Line 25 in b19fb3f
Вопрос: Почему лучше множество?
Line 34 in 6e0c57b
Ответ:
Множество лучше, потому что дальше делаются проверки с использованием оператора in, за которым в случае массива стоит полный перебор элементов массива и сравнение их с искомым, а в случае множества -- одна операция проверки наличия ключа в хеш-таблице.
А зачем Вам обращаться к элементу массива?
логика: если i == 'database', то i точно начинается с 'database', следовательно, первая проверка i.startswith('database') является излишней
Line 33 in b19fb3f
PEP8: после запятой должен быть пробел
Line 29 in b19fb3f
С какой целью экземляр токенизатора записывается в качестве атрибута в класс окна?
Line 46 in 86f207f
Этот экземпляр сейчас создаётся при каждом вызове get_window(). Смысл записывать его не в обычную переменную, а в класс окна, при такой реализации непонятен. В класс окна его, может быть, и имеет смысл записать, но тогда не в методе get_window(), а непосредственно в определении класса окна:
class Window(object):
...
tokenizer = Tokenizer()
и далее обращаться к нему как cls.tokenizer, не пересоздавая.
PEP8: перед символом комментария '#', если он расположен на той же строке, что и код, должно быть не менее 2 пробелов
Line 28 in b19fb3f
Лишний атрибут класса
Line 38 in 86f207f
Совершенно не понятно, зачем нужен этот атрибут у класса контекстного окна. В коде он нигде не используется.
Название класса во множественном числе сбивает с толку
Line 13 in 86f207f
В python обычно классы именуются в единственном числе, за исключением классов некоторых коллекций (множеств, массивов, словарей), экземпляры которых являются чем-то, что можно назвать существительным во множественном числе, ср.:
class Cat(Animal):
def meow(self):
print("Meow!")
class Cats(list):
def meow(self):
for cat in self:
cat.meow()
некорректно вычисляется позиция начала окна
Line 66 in 86f207f
token.position + len(token.s) -- это действительно позиция начала окна, но в перевёрнутой подстроке, которая была построена ранее (string[position.end::-1]), а не в строке string, в которой будет выделяться цитата. Эта перевёрнутая подстрока начинается в строке string в позиции position.end и заканчивается в начале string. Соответственно, чтобы перевести любую позицию p в этой перевёрнутой подстроке в позицию в строке string, необходимо вычесть p из position.end. Соответственно, позиция начала окна в строке string выглядит как position.end - (token.position + len(token.s))
STREEEEEEEEAM
Line 57 in 6f27334
А если по ошибке передадут позицию, в которой указан номер строки, больший, чем есть в файле, или, наоборот, меньший нуля?
Lines 56 to 57 in 86f207f
PEP8: Перед каждым классом должно быть две пустые строки
Line 6 in b19fb3f
PEP8: отступ должен составлять 4 пробела, а не 2
Line 34 in b19fb3f
Здесь открывается база данных, при этом перед этим не производится действий, которые бы позволили индексатору её закрыть: экземпляр индексатора не удаляется / нет вызова какого-либо метода у индексатора, который бы закрыл или синхронизировал базу
Line 27 in b19fb3f
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.