Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для tarhanovk
1 / 1 / 0
Регистрация: 08.11.2013
Сообщений: 41

Нужно разобраться с вызовом функции с переменным количеством аргументов через *args

19.02.2023, 11:18. Показов 664. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Изучаю тему функции, стоит задача считать среднее арифметическое для ненулевых параметров функции.

Итого, на вход программы подается строка с числами через пробел
Задача написать функцию, которая будет считать средн арифметическое
переданных параметров для ненулевых параметров.

вот мой код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
str_input = "0 10 10 0 10 0 10 10"
str2 = str_input.replace(" ",", ")
 
def mean_val(*nums):
    count = 0
    sum = 0
    for num in nums:
        if num != 0:
            count += 1
            sum += float(num)
    return sum/count
 
result = mean_val(*str2)
 
print(result)
Код не работает, не могу понять, как именно передавать набор чисел в функцию.
Пробовал передавать список чисел, не работает функция, пробовал передавать кортеж в качестве параметра - тоже не работает.

Я читал, что такие функции надо вызывать примерно так: mean_val(10,0,0) например.
Прошу помочь разобраться именно в ПРОЦЕДУРЕ ПЕРЕДАЧИ ПАРАМЕТРОВ в такую функцию.
Менять код особо не надо, нужно показать, как именно передать данную на вход строку
в функцию mean_val чтобы она приняла строку как набор значений чисел.

Заранее спасибо

Добавлено через 3 минуты
и еще вопрос, что именно означает символ * в объявлении функции и при ее вызове
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.02.2023, 11:18
Ответы с готовыми решениями:

Шаблон функции с переменным количеством аргументов
Добрый вечер, мне необходимо при помощи шаблона функции реализовать поиск минимального числа(тип данных не известен, количество чисел...

Странное поведение функции с переменным количеством аргументов
Честно говоря даже не знаю где проблема, надеюсь вы поможете разобраться. Есть функция LinkStr для соединения нескольких строк: //...

Функция с переменным количеством аргументов
Написал вот такой хелловорлд, использующий функцию с переменным количеством аргументов. Вывод неадекватный. Где я туплю? #include...

3
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
19.02.2023, 11:23
Лучший ответ Сообщение было отмечено tarhanovk как решение

Решение

Цитата Сообщение от tarhanovk Посмотреть сообщение
не могу понять, как именно передавать набор чисел в функцию.
Python
1
2
3
4
>>> str_input = "0 10 10 0 10 0 10 10"
>>> values = [int(x) for x in str_input.split()]
>>> values
[0, 10, 10, 0, 10, 0, 10, 10]
Цитата Сообщение от tarhanovk Посмотреть сообщение
что именно означает символ *
распаковка. для объявления - все что тут придет, засунь в кортеж с таким именем, для вызова - отправь все значения коллекции как набор аргументов, а не 1 лист/кортеж

Цитата Сообщение от tarhanovk Посмотреть сообщение
sum
не стоит так называть переменные
1
 Аватар для tarhanovk
1 / 1 / 0
Регистрация: 08.11.2013
Сообщений: 41
19.02.2023, 11:36  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
не стоит так называть переменные
почему не стоит? пересекается с именами из math?

с остальным вроде разобрался, спасибо большое
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
19.02.2023, 11:38
Цитата Сообщение от tarhanovk Посмотреть сообщение
пересекается с именами из math?
нет со встроенными именами
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.02.2023, 11:38
Помогаю со студенческими работами здесь

Функция с переменным количеством аргументов
Добрый день! Имеется код: void show_it(int a, ...) { int* pa = &a; int i=0; while(i!=6) { ...

Функция с переменным количеством аргументов
Не могу понять как это работает. Подскажите пож-ста. Имеется функция, нужно указывая с textbox цифры через запятую или просто в строку,...

Напишите функцию с переменным количеством аргументов
Напишите функцию с переменным количеством аргументов (аналог prinft), которая принимает в качестве обязательных параметров массив символов,...

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

Функция с переменным количеством аргументов вызывает out of memory
property(string & name_c, short nesting_c, string & level1, ...) { nesting=nesting_c; name=name_c; va_list p; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 15.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru