Допустим, у меня есть список
x = [1,2,3,4,5,6,7,8,9,10]
И я хочу напечатать этот список, вызвав функцию.Вот моя функция для печати списка
def print_list(list_received):
for var in list_received:
print var
И я звоню print_list()
, как показано ниже
print_list(x)
| |
method arguement
name
Так что вызов функции выше похож на тот, который мы использовали в C /C ++.
Теперь допустим, у меня есть список с именем my_list
my_list = [1,2,3,4,5,6,7,8,9,10]
И я хочу преобразовать my_list
в кортеж, и я буду делать, как показано ниже
my_tuple = tuple(my_list)
Теперь вот это tuple(my_list)
называется приведением типов , как я прочитал здесь http://www.pitt.edu/~naraehan/python2/data_types_conversion.html
теперь выше приведением типов выглядит совершенно иначе, чем C
илиC++
как и в C
, который мы привыкли делать
int x = 10;
char ch = (char)x
Мое первое сомнение в том, как рациональная теория или соображение об изменении C
выглядит как (tuple)my_list
на tuple(my_list)
?Ответ может быть Python
не C
, но я хочу знать больше.
Мой второй вопрос - как интерпретатор Python решает, является ли его вызов функции или преобразованием типафункция т.е. оба соглашения о вызовах my_print(x)
и tuple(my_list)
выглядят одинаково, но на самом деле оба выполняют разную работу.