Запуск test.py дает
Traceback (most recent call last):
File "test.py", line 3, in <module>
Map = Parser.Map(os.path[0] + "\\start.wmap")
TypeError: 'module' object is not subscriptable
import configparser
def StringIsNumber(String):
try:
int(String)
except:
return False
return True
class Map:
Parser = configparser.RawConfigParser()
MapURL = ""
def __init__(self, Map):
self.Parser.read(Map)
self.MapURL = Map
def TileTypes(self):
#All numerical sections can be assumed to be tiles
return [n for n in self.Parser.sections() if StringIsNumber(n)]
import Parser
import os
Map = Parser.Map(os.path[0] + "\\start.wmap")
print(Map.TileTypes())
То, что вы не можете получить свои свойства, используя поиск ключа/индекса, например, something[property]
os.path
- это модуль. Неясно, как вы думаете, os.path[0]
собирается сделать для вас, поскольку он не является итерируемым и не имеет 0-го элемента.
Вы пытаетесь индексировать os.path, который является модулем. Subscriptip означает, что вы используете квадратные скобки для объекта. Это допустимо, например, для объекта dict, но не для модуля.
Ошибка в os.path[...]