возврат всей строки в Python; Удалить Нет - PullRequest
0 голосов
/ 05 сентября 2018

Я новичок в Python и хочу удалить все заглавные числа из строки. Я попробовал приведенный ниже код, но получил None после каждого вызова функции. Что мне вернуть из функции?

def remove_capitals(a_string):
    for latter in a_string:

        if not (ord(latter) in range(65,91)):
            print(latter,end="")
        else:
            continue

print(remove_capitals("A1B2C3D"))
print(remove_capitals("Georgia Institute of Technology"))

Я получаю ниже Выход

123None
eorgia nstitute of echnologyNone

Ответы [ 2 ]

0 голосов
/ 05 сентября 2018

Использование isupper,

def remove_upper_case(x):
        return ''.join(i for i in x if not i.isupper())

Исполнение:

In [281]: remove_upper_case("Georgia Institute of Technology")
Out[281]: 'eorgia nstitute of echnology'

In [282]: remove_upper_case("A1B2C3D")
Out[282]: '123'
0 голосов
/ 05 сентября 2018

Вы можете использовать выражение генератора с str.join, чтобы удалить все заглавные буквы, которые перечислены в string.ascii_uppercase

from string import ascii_uppercase
def remove_capitals(a_string):
    return ''.join(i for i in a_string if i not in ascii_uppercase)

>>> print(remove_capitals("A1B2C3D"))
123
>>> print(remove_capitals("Georgia Institute of Technology"))
eorgia nstitute of echnology
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...