Каков Python, эквивалентный (s) к Платформе Наборов Java?

Платформа Наборов Java похожа на Стандартную библиотеку шаблонов C++: "унифицированная архитектура для представления и управления наборами (возражает что группа несколько элементов в единый блок)".

http://java.sun.com/docs/books/tutorial/collections/intro/index.html

5
задан saidimu apale 12 January 2010 в 06:50
поделиться

2 ответа

Да, вы можете сделать это так:

for (char alphabet = 'A'; alphabet <= 'Z'; alphabet++) {
    System.out.println(alphabet);
}

Это также возможно с помощью набора:

for (int i = 65; i <= 90; i++) {
    System.out.println((char)i);
}
-121--1166779-

В настоящее время это невозможно из-за синтаксического анализатора yacc . Этот поток на Ruby-forum предлагает несколько решений.

class A
     define_method(:hello) do | name, *opt_greeting|
        option = opt_greeting.first || Hash.new
        greeting = option[:greeting] || "hello"
        puts greeting+" "+name
     end
end


a = A.new
a.hello "barbara"
a.hello "Mrs Jones", :greeting => "Good Morning"
-121--2521471-

Кроме встроенных, можно получить коллекции .

>>> import collections
>>> dir(collections)
['Callable', 'Container', 'Hashable', 'ItemsView', 'Iterable', 'Iterator', 'KeysView', 'Mapping', 'MappingView', 'MutableMapping', 'MutableSequence', 'MutableSet', 'Sequence', 'Set', 'Sized', 'ValuesView', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_abcoll', '_iskeyword', '_itemgetter', '_sys', 'defaultdict', 'deque', 'namedtuple']
>>>
10
ответ дан 18 December 2019 в 06:35
поделиться
for (char c = 'A'; c <= 'Z'; c++) {
  ...
}
-121--1166781-

Вы ищете что-то подобное:

    for( int i = 'a'; i < 'z'; i++ )
        System.out.println((char)i); // Cast int to char
-121--1166782-

Как оказалось, эквивалент Java Collections Framework в Python... Питон. Все основные коллекции, представленные в Java Collections Framework, уже присутствуют в ядре Python.

Попробуйте! Последовательности предоставляют списки, очереди, стеки и т.д. Словари - это ваши хэш-таблицы и карты. Наборы присутствуют и т.д.

Можно считать Python «более высоким» языком, чем Java, поскольку он изначально предоставляет все эти абстрактные типы данных более высокого порядка. (Он также поддерживает объектно-ориентированные, процедурные и функциональные методологии программирования.)

14
ответ дан 18 December 2019 в 06:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: