Компьютерщики/ботаники/товарищи-питоновцы, одолжите мне свои уши!
Я написал скрипт на Python 2.7, который использует функцию set(). Это встроенная структура данных для хранения только уникальных значений. Однако я запускаю скрипт в другой среде. Я знаю, что должен кодировать в той же среде, что и производственная среда. Итак, в производственной среде работает древняя версия Python. Насколько я понимаю, это Python 2.2. Кроме того, этот интерпретатор Python работает на виртуальной машине Java (JVM), что делает этот Jython. Очень круто. :) В любом случае, по какой-то причине структура данных set() не включена в эту версию Python. Могу ли я в любом случае создать свой собственный набор, используя список, а затем искать только уникальные значения? Этот тип написания алгоритма в настоящее время мне не по плечу. Может ли кто-нибудь указать мне полезное направление?
При запуске этого кода я вижу, что версия Python 2.2.
import sys
print sys.version_info
Этот код возвращает: (2, 2, 1, 'final', 0)
Мой код, который выдает ошибку:
machine_set = set() #create a set, an empty set at that
Ошибка, которую я получаю, выглядит следующим образом:
<me@linuxbox ~>$ java -cp $WEBLOGIC weblogic.WLST lolcats.py
Initializing WebLogic Scripting Tool (WLST) ...
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands
Problem invoking WLST - Traceback (innermost last):
File "/home/oracle/lolcats.py", line 18, in ?
TypeError: set() takes at least 2 arguments (0 given)
None
. - person Michael Butscher   schedule 08.09.2018sets
с сайта Python 2.3-2.7 написан на чистом Python и должен быть совместим с 2.2, так что вы можете просто скопировать и вставить его в свой собственный проект. - person abarnert   schedule 08.09.2018sets
или назвал бы этот код модулем, если я могу проявить фантазию в WLST/Jython. Спасибо за крутую идею. - person user3870315   schedule 08.09.2018