Son zamanlarda sistemime python-WikEdDiff
paketini yükledim. Anladığım kadarıyla, orijinal JavaScript WikEdDiff aracının bir python uzantısı. Kullanmaya çalıştım ama bunun için herhangi bir belge bulamadım. WikEdDiff.diff()
kullanıyordum. Böyle getFragments()
ve diğerleri gibi bu sınıfın diğer işlevleri kullanmak isteyen, ancak kontrol üzerinde, aşağıdaki hata gösterir:Python-WikEdDiff'i nasıl kullanırım?
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.4/dist-packages/WikEdDiff/diff.py", line 1123, in detectBlocks
self.getSameBlocks()
File "/usr/local/lib/python3.4/dist-packages/WikEdDiff/diff.py", line 1211, in getSameBlocks
while j is not None and self.oldText.tokens[j].link is None:
IndexError: list index out of range
, ben nesnesinde tokens[]
yapı ise boş kalır öğrendim başlatılmış olmalıydı.
Varsayılan kurucudan ayrılmam gereken bir başlatma işlevi var mı? Yoksa yapıcıya ilettiğim 'WikEdDiffConfig' yapılandırma yapısıyla ilgisi var mı? Sadece parçaları gerekiyorsa
def diff(self, oldString, newString):
...
# Free memory
self.newText.tokens.clear()
self.oldText.tokens.clear()
# Assemble blocks into fragment table
fragments = self.getDiffFragments()
# Free memory
self.blocks.clear()
self.groups.clear()
self.sections.clear()
...
return fragments
böyle diff()
ait iade değişkeni kullanabilirsiniz: WikEdDiff
nesne diff()
içine dahili olarak aklandı çünkü kod this section gösterildiği gibi
bir python3 örneği burada kaynağı görüntüle yok: https: //github.com/lahwaacz/python-wikeddiff/blob/master/WikEdDiff/__init__.py –