Что такое string.digits

Подскажите, пожалуйста, в чем вообще смысл string.digits, и где в коде его вообще можно использовать. Просто вообще не ясно его назначение. Условно indigits() проверяет то, состоит ли строка только из цифр, а вот то, что делает string.digits не ясно. Идеально было бы посмотреть еще на код с использованием string.digits. Заранее спасибо.


Ответы (1 шт):

Автор решения: Pak Uula

Это просто строка символов, представляющих цифры. string.digits[0] == '0', string.digits[1] == '1' и так далее string.digits[9] == '9'

Примеры использования

Перевод числа в строку

import string

def int2str(num):
    if num == 0:
        return '0'
    res=''
    if num < 0:
        sign = -1
        num = -num
    else:
        sign = 0
    while num > 0:
        digit, num = num % 10, num // 10
        # Using string.digits
        res = string.digits[digit] + res

    if sign < 0:
        res = '-' + res
    return res

Генерация случайной цифровой последовательности

import string
import random

def random_numstr(len:int)->str:
    char_list = random.choices(string.digits, k=len)
    return "".join(char_list)
→ Ссылка