Nano Hash - криптовалюты, майнинг, программирование

Связать текстовый файл в приложении py2app (python)

Недавно я изучил Python (2.7) и делал несколько простых настольных игр с искусственным интеллектом и т. п. для практики. В настоящее время я делаю интеллектуальную игру палача, которая требует включения файла словаря. (У меня есть текстовый файл, в каждой строке которого есть новое слово). Я успешно использовал py2app для других вещей, таких как это: connect-four.zzl.org, но, к сожалению, это не так. Кажется, мой текстовый файл не включается, когда я запускаю py2app для своей новой программы-палача. Может ли кто-нибудь помочь мне понять, как включить этот файл, чтобы программу можно было распространять, как игру Connect Four, на которую я ссылался?

Большое спасибо. (Я использую OS X 10.7 и при необходимости могу предоставить любую другую необходимую информацию)


Ответы:


1

Укажите ключ ресурсов в параметрах, который содержит список ресурсов для включения. Это будет текущий каталог при запуске вашего приложения.

параметры = { "ресурсы": ["myfile.txt"] }

http://svn.pythonmac.org/py2app/py2app/trunk/doc/index.html#option-reference

Если вы используете флаг ресурсов с py2applet, он создаст этот ключ

18.12.2011
  • Потрясающий! Я попробовал это прямо под моей спецификацией значка, и это сработало. Большое спасибо. 18.12.2011
  • на самом деле, я думал, что это будет работать таким же образом для py2exe, но это не так. Я написал это: distutils.core.setup( windows=[ {'script': 'hangman.py', 'icon_resources': [(1, 'HangIcon.ico')], 'other_resources': [(1, '2of12inf .текст')]} ], 19.12.2011
  • В вашем вопросе говорится, что вы используете py2app. Если вам нужен конкретный ответ py2exe, обязательно скажите об этом :) 19.12.2011
  • Мне нужен был ответ py2app, и я подумал, что как только я это пойму, я смогу понять ответ py2exe, но не смог. Напишу новую тему, наверное. 19.12.2011

  • 2

    Из справочного документа для py2app:

    Первый шаг — создать файл setup.py для вашего скрипта. setup.py — это «файл проекта», который сообщает setuptools все, что ему нужно знать для создания вашего приложения. Для этого воспользуемся скриптом py2applet:

    $ py2applet --make-setup MyApplication.py

    Wrote setup.py

    Если у вашего приложения есть значок (в формате .icns) или файлы данных, которые ему требуются, вы также должны указать их в качестве аргументов для py2applet.

    Итак, предположим, что у вас запущены hangman.py и hangman.txt:

    $ py2applet --make-setup hangman.py hangman.txt

    18.12.2011
  • Спасибо за ответ. как сказал jdi, правильный способ сделать это - указать его как options = {resources: [myfile.txt]}. 18.12.2011
  • @ user1104215: Оба метода работают. Не забудьте нажать зеленую галочку рядом с ответом, который вам подходит. 18.12.2011

  • 3

    Очень простой способ — добавить свой словарь в качестве (переменной) модуля Python, который вы импортируете во время выполнения. Словарь будет встроен в ваш exe, как и любой другой модуль.

    18.12.2011
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..