Только положительные значения python

Как отсортировать из списка только положительные числа?

Я пытаюсь составить список только отсортированных положительных списков, когда пользователь дает положительные и отрицательные целые числа в этом списке. Например, если пользователь указал «10 -7 4 39 -6 12 2», моя программа отсортирует только положительные числа и выдаст «2 4 10 12 39». Пока что мой код выглядит так:

list = input().split() positive_list = [] for i in range(list): if list[i] > 0: positive_list.append(list[i]) i+=1 positive_list.sort() print(positive_list) 

2 ответа

У вас есть несколько проблем:

  • у вас есть переменная с таким же именем, как у базового типа ( list ), которая затеняет тип; выберите лучшее имя
  • for i in range(my_list): не делает того, что вы думаете; вы можете сделать for i in range(len(my_list)): , но вы также можете просто for n in my_list: и n будет каждый элемент в my_list по очереди
  • ваш пользователь вводит текст, вам нужно преобразовать эти строки в целые числа, прежде чем сравнивать их с другими целыми числами, используя int()
  • вы делаете for i .. , но также i += 1 вам не нужно самостоятельно увеличивать переменную цикла for.

Посмотрите на составные части списков, они идеально подходят для того, что вы пытаетесь сделать более сложным способом, для построения positive_list .

Ваше решение может быть таким простым, как:

print(sorted([int(x) for x in input().split() if int(x) > 0])) 

Но оставаясь ближе к тому, что вы пытались:

numbers = [int(x) for x in input().split()] sorted_positive_numbers = sorted([x for x in numbers if x > 0]) print(sorted_positive_numbers) 

Если вы настаиваете на цикле for вместо понимания списка:

numbers = [int(x) for x in input().split()] positive_numbers = [] for number in numbers: if number > 0: positive_numbers.append(number) print(sorted(positive_numbers)) 

Переименуйте list на другое имя. list — ключевое слово Python. Например list_new или list_temp

Читайте также:  Blender and python tutorial

Я предлагаю попробовать вот так:

positive_list = [] for num in listNew: if num > 0: positive_list.append(num) positive_list.sort() 

Источник

Найти в массиве только положительные числа и вывести их

Найти в этом массиве числа в интервале от 30 до 60 и вывести только их на экран
Создать одномерный массив(рэндомом — Random(100)). Найти в этом массиве числа в интервале от 30 до.

Как сделать чтоб в массиве были только положительные числа
var a:array of integer; i,n:integer; begin write(‘vvedite n= ‘); read(n) ; writeln(‘vvedite.

Вывести на экран только положительные числа
Дано 3 числа (не равные нулю) Вывести на экран только положительные числа Введите а : 3 .

Положительные числа в массиве заменить на максимальное число. И вывести нечетные числа исходного массива на экран
Положительные числа в массиве заменить на максимальное число. И вывести нечетные числа исходного.

Как сделать так, что-бы массиве были не только положительные числа, но и отрицательные?
Как сделать так, что-бы массиве были не только положительные числа, но и отрицательные? .

a = [[-12, 6, 9], [-49, 25, 5], [3, 5, -27]] lst_ = [] for i in a: for j in i: if j > 0: lst_.append(j) print(*lst_, sep="\n")

Как вывести только положительные числа массива
Найдите количество положительных элементов в заданном списке. Формат входных данных Вводится.

Массив: Вывести на экран положительные числа в массиве.
Дан массив из десяти чисел A. Вывести на экран положительные числа в массиве. (числа вводятся с.

Вывести на экран только положительные целые числа из диапазона от А до В
Вывести на экран:только положительные целые числа из диапазона от А до В (АВ); Замечание.

Вывести на экран только положительные целые числа из диапазона от А до В
Решить задачу, используя операторы циклов while и do…while Вывести на экран только положительные.

Источник

Работа с числами в Python

В этом материале рассмотрим работу с числами в Python. Установите последнюю версию этого языка программирования и используйте IDE для работы с кодом, например, Visual Studio Code.

В Python достаточно просто работать с числами, ведь сам язык является простым и одновременно мощным. Он поддерживает всего три числовых типа:

Хотя int и float присутствуют в большинстве других языков программирования, наличие типа комплексных чисел — уникальная особенность Python. Теперь рассмотрим в деталях каждый из типов.

Целые и числа с плавающей точкой в Python

В программирование целые числа — это те, что лишены плавающей точкой, например, 1, 10, -1, 0 и так далее. Числа с плавающей точкой — это, например, 1.0, 6.1 и так далее.

Создание int и float чисел

Для создания целого числа нужно присвоить соответствующее значение переменной. Возьмем в качестве примера следующий код:

Здесь мы присваиваем значение 25 переменной var1 . Важно не использовать одинарные или двойные кавычки при создании чисел, поскольку они отвечают за представление строк. Рассмотрим следующий код.

В этих случаях данные представлены как строки, поэтому не могут быть обработаны так, как требуется. Для создания числа с плавающей точкой, типа float , нужно аналогичным образом присвоить значение переменной.

Здесь также не стоит использовать кавычки.

Проверить тип данных переменной можно с помощью встроенной функции type() . Можете проверить результат выполнения, скопировав этот код в свою IDE.

 
var1 = 1 # создание int
var2 = 1.10 # создание float
var3 = "1.10" # создание строки
print(type(var1))
print(type(var2))
print(type(var3))

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

 
# создание 1,000,000
var1 = 1,000,000 # неправильно

Если попытаться запустить этот код, то интерпретатор Python вернет ошибку. Для разделения значений целого числа используется нижнее подчеркивание. Вот пример корректного объявления.

 
# создание 1,000,000
var1 = 1_000_000 # правильно
print(var1)

Значение выведем с помощью функции print :

Арифметические операции над целыми и числами с плавающей точкой

Используем такие арифметические операции, как сложение и вычитание, на числах. Для запуска этого кода откройте оболочку Python, введите python или python3 . Терминал должен выглядеть следующим образом:

Python IDLE

Сложение

В Python сложение выполняется с помощью оператора + . В терминале Python выполните следующее.

Результатом будет сумма двух чисел, которая выведется в терминале.

Работа с числами в Python

Теперь запустим такой код.

В нем было выполнено сложение целого и числа с плавающей точкой. Можно обратить внимание на то, что результатом также является число с плавающей точкой. Таким образом сложение двух целых чисел дает целое число, но если хотя бы один из операндов является числом с плавающей точкой, то и результат станет такого же типа.

Вычитание

В Python для операции вычитания используется оператор -. Рассмотрим примеры.

>>> 3 - 1 2 >>> 1 - 5 -4 >>> 3.0 - 4.0 -1.0 >>> 3 - 1.0 2.0

Положительные числа получаются в случае вычитания маленького числа из более крупного. Если же из маленького наоборот вычесть большое, то результатом будет отрицательно число. По аналогии с операцией сложения при вычитании если один из операндов является числом с плавающей точкой, то и весь результат будет такого типа.

Умножение

Для умножения в Python применяется оператор * .

>>> 8 * 2 16 >>> 8.0 * 2 16.0 >>> 8.0 * 2.0 16.0

Если перемножить два целых числа, то результатом будет целое число. Если же использовать число с плавающей точкой, то результатом будет также число с плавающей точкой.

Деление

В Python деление выполняется с помощью оператора / .

>>> 3 / 1 3.0 >>> 4 / 2 2.0 >>> 3 / 2 1.5

В отличие от трех предыдущих операций при делении результатом всегда будет число с плавающей точкой. Также нужно помнить о том, что на 0 делить нельзя, иначе Python вернет ошибку ZeroDivisionError . Вот пример такого поведения.

>>> 1 / 0 Traceback (most recent call last): File "", line 1, in ZeroDivisionError: division by zero

Деление без остатка

При обычном делении с использованием оператора / результатом будет точное число с плавающей точкой. Но иногда достаточно получить лишь целую часть операции. Для этого есть операции интегрального деления. Стоит рассмотреть ее на примере.

Результатом такой операции становится частное. Остаток же можно получить с помощью модуля, о котором речь пойдет дальше.

Остаток от деления

Для получения остатка деления двух чисел используется оператор деления по модулю % .

>>> 5 % 2 1 >>> 4 % 2 0 >>> 3 % 2 1 >>> 5 % 3 2

На этих примерах видно, как это работает.

Возведение в степень

Число можно возвести в степень с помощью оператора ** .

Комплексные числа

Комплексные числа — это числа, которые включают мнимую часть. Python поддерживает их «из коробки». Их можно запросто создавать и использовать. Пример:

Источник

Оцените статью