Осмыслите аргументы функции Python

Ваш питон® документация показывает, как вызвать функцию Python. Сигнатуры функций Python выглядят аналогично MATLAB® сигнатуры функций. Однако у Python есть синтаксис, который может оказаться незнакомым пользователям MATLAB.

Позиционные аргументы

Аргумент positional передается по положению. Эти аргументы появляются в начале сигнатуры функции.

Подпись PythonИспользование MATLAB

abs(X)
Аргументы в X обязательно.

>> py.abs(-99)

Некоторые функции принимают произвольную последовательность позиционных аргументов, включая отсутствие аргументов. В Python эти аргументы определяются подготовкой имени к * символ.

Подпись PythonИспользование MATLAB

itertools.izip(*iterables)
The iterables аргумент не требуется, в этом случае функция возвращает итератор нулевой длины.

Агрегируйте элементы из двух списков.
>> py.itertools.izip(... py.list({1:10}),py.list({'a','b'}));


Создайте итератор нулевой длины.
>> py.itertools.izip;

print(*objects)

>> words = {'Hello','World!'};
>> py.print(words{:})

Аргументы в виде ключевых слов

Аргументу keyword предшествует идентификатор. Аргументы в виде ключевых слов, также называемые named аргументами, могут быть заданы в любом порядке. Аргументы в виде ключевых слов аналогичны парам "имя-значение" в MATLAB. Используйте MATLAB pyargs функция для создания аргументов ключевых слов для функций Python.

Подпись PythonИспользование MATLAB

print (* объекты, sep = ", end = '\n ',
файл = sys.stdout)

sep, end, и file являются аргументами ключевого слова.

Измените значение end.
>> py.print('string',pyargs('end','--'))

Этот пример использует значение по умолчанию для file ключевое слово. Создайте некоторые текстовые переменные.

x1 = py.str('c:');
x2 = py.os.curdir;
x3 = py.os.getenv('foo');
py.print(x1,x2,x3)
c: . None

Чтобы отобразить значения на отдельных линиях, используйте newline, \n, как диафрагма.

py.print(x1,x2,x3,pyargs('sep',sprintf('\n')))
c:
.
None

Как изменить sep на пустую строку и изменить end значение для отображения THE END, тип:

py.print(x1,x2,x3,pyargs('end', sprintf(' THE END\n'),'sep',py.str))
c:.None THE END

Произвольное число аргументов в виде ключевых слов

Python задает произвольное количество аргументов ключевого слова, предваряя имя ** персонажи.

Подпись PythonИспользование MATLAB

dict(**kwarg)

>> D = py.dict(pyargs('Joe',100,'Jack',101))

Необязательные аргументы

Аргумент optional является необязательным аргументом.

Подпись PythonИспользование MATLAB

random.randrange(start,stop[,step])
Аргументы в step опционально.

>> py.random.randrange(1,100)

Необязательные аргументы могут иметь значения по умолчанию. Значение по умолчанию обозначается знаком равенства = со значением по умолчанию.

Подпись PythonИспользование MATLAB

print (* объекты, sep = ", end = '\n ',
файл = sys.stdout)

Значение по умолчанию для file является sys.stdout.

Печать двух значений с помощью значений по умолчанию.
>> py.print(2,'2')

См. также