Как найти вторую цифру числа питон

Is there any good idea how to get the second digit of a string?
For example:

aaa = 122
bbb = 333

rest = bbb-aaa 
if rest[:2] == 1: 
    do something..

asked Dec 16, 2013 at 17:42

hawer183's user avatar

2

Index it:

>>> mystr = "123"
>>> mystr[1]
'2'
>>> mystr[-2]
'2'
>>>

If it is a number, then you need to convert it to a string first with str:

>>> myint = 123
>>> str(myint)[1]
'2'
>>> str(myint)[-2]
'2'
>>>

answered Dec 16, 2013 at 17:44

1

Convert the integer to a string first using the built-in str() function and then slice it accordingly

So Try this:

if str(rest)[1] == '1':
    #do something example:
    print 'hi'

answered Dec 16, 2013 at 17:44

K DawG's user avatar

K DawGK DawG

13.2k9 gold badges35 silver badges66 bronze badges

0

def lastsecond(num):

if(num>-9 and num<10):
    return -1;
else:
    temp=num/10;
    rem=temp%10;
    return int(rem);

number=abs(int(input(«enter number : «)))
print(«the last second digit of %d is %d»%(number,lastsecond(number)))

answered Sep 28, 2021 at 3:35

venu's user avatar

Студворк — интернет-сервис помощи студентам

Дано натуральное число. Найдите цифру, стоящую в разряде десятков в его десятичной записи (вторую справа цифру или 0, если число меньше 10).

Замечание

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

Формат ввода

Вводится единственное число.

Формат вывода

Выведите ответ на задачу.

Примеры
Ввод:
73
Вывод:
7

Написал код к этой задаче, но где-то ошибся. Просьба знающим подсказать, где я накосячил.

Python
1
2
3
4
5
num = int(input())
if num < 10:
    print(num)
else:
    print(num // 10 % 10)

2 ответа

Преобразуйте целое число в строку сначала, используя встроенную функцию str() а затем разрежьте ее соответственно

Итак, попробуйте следующее:

if str(rest)[1] == '1':
    #do something example:
    print 'hi'

K DawG
16 дек. 2013, в 16:14

Поделиться

Индекс:

>>> mystr = "123"
>>> mystr[1]
'2'
>>> mystr[-2]
'2'
>>>

Если это число, то вам нужно преобразовать его в строку сначала с помощью str:

>>> myint = 123
>>> str(myint)[1]
'2'
>>> str(myint)[-2]
'2'
>>>

iCodez
16 дек. 2013, в 14:52

Поделиться

Ещё вопросы

  • 1Найдите совпадение в строке файла, затем перейдите к следующему файлу
  • 0Javascript не работает после загрузки сервера
  • 0jQuery + HTML: использование кнопки или
  • 0Jquery Image объект
  • 1Подсчет гласных, включенных между двумя согласными
  • 1Линейный поиск по указанному массиву, чтобы получить требуемый индекс элемента
  • 0Пройдите через n-арное дерево
  • 0PHP состоит из нескольких слов
  • 0Spring Data: findByEntityNot () во многих отношениях
  • 1Контроль кэша игнорируется
  • 1Как обновлять графический интерфейс tkinter при каждом движении?
  • 0Scanf и строки в C ++
  • 1Поддерживайте работу WebSocket и некоторых обработчиков событий, пока приложение активно
  • 1Когда переопределять, а когда подписываться на делегат?
  • 0Получение MySQLSyntaxErrorException с Hibernate Spatial и MySQL 5.6
  • 0Передача значений из div, содержащего список с другой страницы
  • 1Обрабатывать ложные аргументы
  • 0Qt Включить путь
  • 1Как я могу выяснить и получить доступ к подклассам предупреждений панд?
  • 0mysql 0000-00-00 ошибка обновления
  • 1Не удается найти элемент с помощью Selenium
  • 1Предзаказ дерева обхода копия папки
  • 1Ошибка времени выполнения NullPointerException
  • 1Понимание примеров из «Понимания замыканий JavaScript с легкостью»
  • 0Некоторая довольно сложная тригонометрия для изменения размеров окна
  • 0Как скрыть URL при печати страницы с помощью JavaScript или JQuery
  • 0Как наследовать класс A от B при наследовании B от A?
  • 1Как использовать Loop для выполнения процедуры хранения в Cosmos-DB / Document-DB?
  • 1Программа базового абстрактного типа данных
  • 1У меня проблема с использованием onMarkerClickListeners. Я новичок, и появляется сообщение об ошибке, которое говорит о пропущенном операторе возврата
  • 1Сериализация ответа xml для модификации с SimpleXML в kotlin
  • 1Java SE Truth API Morena7
  • 0Регулярное выражение с комментариями не работает
  • 0Проблема с боковой панелью навигации
  • 0Работает на локальном хосте, но не на веб-сервере… session_start (): невозможно отправить ограничитель кэша сеанса — заголовки уже отправлены
  • 1Как проверить, есть ли у элемента дублированные атрибуты с помощью cheerio js
  • 0Angular.js 401 Неразрешенный код статуса
  • 1Как я могу показать сообщение об ошибке в окне сообщения в C # исключения SQL (уникальный идентификатор) в 3-уровневом приложении?
  • 1Совместимость с Android + FTDI FT232H
  • 0заменить каждое выбранное значение случайной буквой / цифрой
  • 1Увеличение 3-го вхождения цифры в строку с помощью JavaScript
  • 0рекурсия через функцию производных классов шаблонного класса
  • 1Почему деление исключений во время компиляции на ноль не производит в Eclipse IDE?
  • 0Laravel PHP: возникли проблемы при использовании nest ()
  • 0Получение ожидаемой ошибки неквалифицированного идентификатора с C ++ при попытке выполнить
  • 1Нахождение SVD-матриц комплексной матрицы в Java
  • 1Не удается открыть новый блокнот Python или R в студии машинного обучения Azure
  • 0У вас есть значение индекса копирования столбца при вставке?
  • 0Как передать объект в качестве параметра функции скрипта Java на onClick
  • 0Хитрый подход при разборе объекта с 2 свойствами на 2 отдельные модели в AngularJS

При помощи операции нахождения остатка и целочисленного деления можно достаточно несложно вычислить любую цифру числа.

Рассмотрим программу получения цифр двузначного числа:

num = 17
a = num % 10
b = num // 10
print(a)
print(b)

Результатом выполнения программы будут два числа:

7
1

То есть сначала мы вывели последнюю цифру числа, а затем первую цифру.

Запомни: последняя цифра числа определяется всегда как остаток от деления числа на 10 (% 10). Чтобы отщепить последнюю цифру от числа, необходимо разделить его нацело на 10 (// 10).

Рассмотрим программу получения цифр трёхзначного числа:

num = 754
a = num % 10
b = (num % 100) // 10
c = num // 100
print(a)
print(b)
print(c)

Результатом выполнения программы будут три числа:

4
5
7

То есть сначала мы вывели последнюю цифру числа, затем среднюю цифру, а затем первую цифру.

Алгоритм получения цифр n-значного числа

Несложно понять, по какому алгоритму можно найти каждую цифру n-значного числа num:

  • Последняя цифра: (num % 101) // 100;
  • Предпоследняя цифра: (num % 102) // 101;
  • Предпредпоследняя цифра: (num % 103) // 102;
  • …..
  • Вторая цифра: (num % 10n-1) // 10n-2;
  • Первая цифра: (num % 10n) // 10n-1.

Решение задач

Задача 1. Напишите программу, определяющую число десятков и единиц в двузначном числе.

Решение. Число единиц – это последняя цифра числа, число десятков – первая цифра. Чтобы получить последнюю цифру любого числа, нужно найти остаток от деления числа на 10. Чтобы найти первую цифру двузначного числа, нужно поделить число нацело на 10. Программа, решающая поставленную задачу, может иметь следующий вид:

num = int(input())
last_digit = num % 10
first_digit = num // 10
print('Число десятков =', first_digit)
print('Число единиц =', last_digit)

Задача 2. Напишите программу, в которой рассчитывается сумма цифр двузначного числа.

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

num = int(input())
last_digit = num % 10
first_digit = num // 10
print('Сумма цифр =', last_digit + first_digit)

Задача 3. Напишите программу, которая печатает число, образованное при перестановке цифр двузначного числа.

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

num = int(input())
last_digit = num % 10
first_digit = num // 10
print('Искомое число =', last_digit * 10 + first_digit)

Задача 4. Напишите программу, в которую вводится трёхзначное число и которая выводит на экран его цифры (через запятую).

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

num = int(input())
digit3 = num % 10
digit2 = (num // 10) % 10
digit1 = num // 100
print(digit1, digit2, digit3, sep=',')

Нужно вытащить первую и последнюю цифру из любого трехзначного числа на Python. Как это реализовать?

задан 7 ноя 2016 в 13:02

s3mpau's user avatar

4

Альтернативный алгоритм без приведения к строке:

value = 123

first_digit = value // 100
second_digit = value % 10

ответ дан 7 ноя 2016 в 13:55

Stranger6667's user avatar

Алгоритм решения задачи может выглядеть так:

  1. Сконвертировать число в строку.
  2. Получить первый символ строки и преобразовать его в число.
  3. Получить последний символ строки и преобразовать его в число.

В коде это может выглядеть так:

num = 123
s = str(num)

# Первая цифра
first_digit = int(s[0])
# Последняя цифра
last_digit = int(s[-1])

ответ дан 7 ноя 2016 в 13:44

Dmitriy Simushev's user avatar

Dmitriy SimushevDmitriy Simushev

17.8k5 золотых знаков47 серебряных знаков85 бронзовых знаков

2

Понравилась статья? Поделить с друзьями:
  • Как найти размер субсидии
  • Как найти бесплатные фото для инстаграм
  • Как найти мой телефон по номеру билайн
  • Как найти поток векторного поля онлайн
  • Как составить бухгалтерский баланс банка россии