Способ мод в питоне с начальной точки - PullRequest
0 голосов
/ 07 марта 2019

Есть ли способ поиска номеров между 97, 122? (ASCII)

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

Требуемая функция выглядит примерно так:

print("number: " + str(123 % 122, 97))
number: 98

Спасибо!

Ответы [ 2 ]

2 голосов
/ 07 марта 2019

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

Самый простой способ:

number = input('Your number: ')
mod_number = ((number - 97) % 26) + 97
print(number, chr(number))

Таким образом, вы вводите число, если оно включено между 97 и 122, тогда оно будет сохранено.В противном случае он будет перемещен в этот интервал.Поэтому, если вы введете 123, вы получите 97, а если сдадите 96, то получите 122.

0 голосов
/ 07 марта 2019

Я собираюсь предположить, что вы хотите непрерывно искать номера между 97 и 122, возвращаясь к 97, когда вы передаете 122.

с модом:

i = 0
while True:
    print(i%26+97)
    i+=1

с циклами for:

while True:
    for i in range(97,123):
        print(i)

может быть, для цикла лучше, так как это переменная, которую я не расту.

Вы также используете цикл из itertools, возможно, чище, так как вам не нужно время:

from itertools import cycle

for i in cycle(range(97,123)):
    print(i)
...