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

Не работает divmod в цикле

28.08.2019, 11:25. Показов 2302. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Я пытаюсь разделить десятичные числа от целых с помощью цикла и функции divmod, но никак не получается. Мне нужно создать два списка с полученными значениями (С целыми и десятичными числами, чтобы дальше с ними работать). Десятичные числа умножить на 100, чтобы получить число без нуля впереди. Например число 28.07 делится на 28 и 07. Но 07 числа быть не может, а 7 для меня будет значит не 7, а 70, но нужно именно 7. Вроде умножаю на 100 и получаю 0.07 * 100 = 7. Всё норм, но не уверен.

Python
1
2
3
4
5
6
7
8
9
import numpy as np
import math
 
times = [22.39, 32.33, 34.39, 28.07, 28.35, 43.18, 42.13, 59.28, 42.03, 24.32, 37.05, 33.21, 39.19, 37.04, 26.20, 26.40, 27.52, 28.49, 37.38, 38.44]
 
for i in range(len(times)):
    a1, a2 = divmod(times[i], 1)
    print(a1)
    print(a2)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.08.2019, 11:25
Ответы с готовыми решениями:

Функция divmod
a = 985.5 b = 115.25 print(divmod(a,b)) получаем (8.0, 63.5) А на калькуляторе вычисляется ответ от деления этих двух чисел...

Деление в столбик c divmod
написать програмку когда пользователь вводит 5478 а програма виводит 5 4 7 8 использовать команду divmod Добавлено через 5...

Не работает if в цикле while/for
int input = 0; while (workStatus) { cout << "Enter:"; cin >> input; cout <<...

4
 Аватар для Vigi
641 / 481 / 179
Регистрация: 28.05.2012
Сообщений: 1,419
28.08.2019, 11:49
Лучший ответ Сообщение было отмечено yellyex как решение

Решение

Python
1
new_data = [str(x).split('.') for x in times]
1
1 / 1 / 0
Регистрация: 03.04.2015
Сообщений: 128
28.08.2019, 12:19  [ТС]
Vigi, спасибо! Как вариант

Добавлено через 23 минуты
Я тут немного переделал код. Так нормально?


Python
1
2
new_data = [divmod(i, 1) for i in times]
print(new_data)
Добавлено через 1 минуту
Как теперь взять десятичные значения?
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
28.08.2019, 12:21
Лучший ответ Сообщение было отмечено yellyex как решение

Решение

Цитата Сообщение от yellyex Посмотреть сообщение
Как теперь взять десятичные значения?
Python
1
tmp = [v[1] for v in new_data]
1
1 / 1 / 0
Регистрация: 03.04.2015
Сообщений: 128
28.08.2019, 12:29  [ТС]
Цитата Сообщение от ioprst Посмотреть сообщение
В чем вопрос то был? Как создать два списка? Или как правильно разделить число на целую и дробную части?
Вообще мне нужен список с десятичными числами, чтобы с ним дальше работать. А так и так и так.

Добавлено через 3 минуты
ioprst, Vigi, Спасибо, вы очень мне помогли

Добавлено через 4 минуты
Итоговый код:
Python
1
2
3
4
5
6
7
8
9
10
times = [22.39, 32.33, 34.39, 28.07, 28.35, 43.18, 42.13, 59.28, 42.03, 24.32,
       37.05, 33.21, 39.19, 37.04, 26.20, 26.40, 27.52, 28.49, 37.38, 38.44]
print("")
print(times)
print("")
new_data = [divmod(i, 1) for i in times]
print(new_data)
print("")
tmp = [round(v[1], 2) for v in new_data]
print(tmp)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.08.2019, 12:29
Помогаю со студенческими работами здесь

Не работает if в цикле while
Определить, является ли натуральное N (вводить с клавиатуры) степенью числа 4 или нет. Результат вывести на экран и записать в файл. Вот...

Echo в цикле не работает
<?php $ks = 0; $opencsv = fopen("tabl.csv","r"); while(($mas=fgetcsv($opencsv,0,"|"))!=false){ $ks++; } echo $ks.'<br />'; ...

Не работает If в цикле DoWhile
int main() { int Point = 0; string Solution; srand((int)time(0)); int Card = rand() % 10 + 1; getline(cin, Solution); ...

Не работает SetPixel в цикле
case WM_PAINT: { hDC = BeginPaint(hWnd, &ps); SetBkMode(hDC, TRANSPARENT); GetClientRect(hWnd, &rect); DrawText(hDC,...

Не работает scanf в цикле
в коде int main() { int n,ip; printf("2-mernoe DPF\n"); do { printf("\n 1-iz faila, 2-test, 0- Vixod\n"); ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru