0
我目前使用由我的教授開發的語言編寫源代碼到源代碼編譯器。它一切順利,但一些語言特質讓我發瘋。源語言有1個索引列表和不同的分片規則,Python使用(非常清晰)0索引列表。用自定義的替換Python列表/設置實現
有沒有什麼辦法可以替代Python使用的列表實現?以下給出我想要的想法。
class MyList(list):
# My implementation of 1-indexed lists
pass
x = ["foo", "bar", "baz"]
y = MyList(["foo", "bar", "baz"])
assert type(x) == type(y) # Should work
assert x[1] == "foo" # Should work
我想使用的語法糖蟒蛇給我的列表,而不是處理產生它在我自己的。我知道我通常不會以真正的代碼來做這件事,但除了我目前的需求之外,我還想知道一個不錯而優雅的解決方案。我想想要弄清列表的元類,或者在運行時改變其功能。有沒有什麼辦法可以做到這一點,並從列表中擴展仍然MyList,因爲它在其引擎下使用列表方法?
我已經做了MyList。我希望Python列表語法返回一個MyList,而不是一個列表。 – reindeer
@reindeer這是不可能的AFAIK ...: - \ – jrennie