Я смотрю на это какое-то время, и надеюсь, что я упустил что-то очевидное. Надеюсь, кто-то сможет это указать мне. Я использую следующее регулярное выражение для поиска путей файлов в незашифрованном:поведение разных регулярных выражений при компиляции
p = re.compile(r'(([A-Za-z]:[\\/])|(\.\.[\\/])+)([A-Za-z0-9\-_]+[\\/])+[A-Za-z0-9\-_]+\.[a-zA-Z]+')
Я знаю, что это ужасно, но это работает. Как минимум; когда я запускаю свой скрипт python. Мне нужно, чтобы скомпилировать EXE, чтобы иметь что-то самодостаточным, и я использую следующие для этого:
from distutils.core import setup
import py2exe
import os
taggerData = [('nltk_data/taggers', ['C:/Users/username/AppData/Roaming/nltk_data/taggers/conll2000_aubt.pickle'])]
setup(
console=[{'script': 'flurp.py'}],
options={
'py2exe':
{
'bundle_files': 2,
'includes': ['lxml.etree', 'lxml._elementpath'],
'compressed': True,
'excludes': ['_ssl'],
}
},
zipfile = None,
data_files=taggerData
)
Теперь, когда у меня есть что-то вроде «C: \ некоторый \ файл \ путь \ here.txt» ; он получает совпадение, когда я запускаю свой скрипт python. Однако, когда я скомпилирую свой скрипт, а затем запустил, я не получаю такой же совпадение. Мне потребуется некоторое время/работа, чтобы создать минимальный скрипт, чтобы воспроизвести именно это, так что в основном мне просто интересно, сталкивался ли кто-либо с подобными проблемами, причем регулярные выражения ведут себя по-разному при компиляции (с py2exe (0.9.2.2))?
@jonsharpe Почему вы чувствуете необходимость быть грубым? Вопрос ясен, как он есть, и вежливо спросил. Если вы не знаете ответа, как я этого не делаю, продолжайте. – saulspatz
Было бы неплохо, если бы вы указали, какую версию py2exe вы используете, и попытались ли вы использовать другую версию py2exe – nhahtdh
спасибо за отзыв, добавлена версия в вопросе – Igor