Найти - Пользователи
Полная версия: Помогите проверить входят ли числа от 0-9 в строку
Начало » Python для новичков » Помогите проверить входят ли числа от 0-9 в строку
1 2 3 4
xam1816
DMM
Если так то всегда будет возвращать True, а если к примеру строка не имеет чисел тогда как проверить вхождение если результат всегда один и тот же???
  
strings = ['Земля-2023', 'лопата', 'т-34', 'a1b2c3', '1234', 'qwerty']
for s in strings:
    if len(s) != len(s.strip('123456789')):
        print(f'{s} >>> YES')
    else:
        print(f'{s} >>> NO')

 
Земля-2023 >>> YES
лопата >>> NO
т-34 >>> YES
a1b2c3 >>> YES
1234 >>> YES
qwerty >>> NO

Process finished with exit code 0
DMM
xam1816

Это опять через цикл выходит, а без него походу никак ((
xam1816
DMM
Это опять через цикл выходит, а без него походу никак ((
  
s = 'Земля-2023'
result = len(s) != len(s.strip('123456789'))
print(result)
Rodegast
 >>> s = 'Земля-2023'
>>> any( str(x) in s for x in range(10) )
True
DMM
xam1816

  s = 'Земля-2023'
result = len(s) != len(s.strip('123456789'))
print(result)

Я правильно понял работает по такому принципу: создаем переменную, потом подсчитываем в одной количество символов потом делаем сравнение на неравенство с подсчетом в другой и с удалением спереди и сзади чисел от 1 и до 9, они естественно стают не ровны и выдает True, если чисел нет спереди или ззади то будет False?

Я все правильно понял или нет?
DMM
xam1816


Ну что делать если цифры в середине слова??? Как тогда определить??

  strings = ['Земля-2023-лопата']
for s in strings:
    if len(s) != len(s.strip('123456789')):
        print(f'{s} >>> YES')
    else:
        print(f'{s} >>> NO')

DMM
Rodegast

Пока не очень понимаю как работает.
Про такую функцию еще не учил, почитаю, спасибо за инфу))
ZerG
А можете хочь немного рассказать о методе translate и maketranslate, а то почитал в инете и не очень понимаю как они работают, какие у них обизательные параметры?
Перво наперво - начинайте учиться гуглить
это слишком простой вопрос для форума
https://www.programiz.com/python-programming/methods/string/maketrans

Еще хотел спросить по поводу вот этой записи не очень понимаю что значит здесь знак - между переменными ?
Это значит минус! В данном случае мы отнимаем от числа знаков в оригинальной строке число знаков в строке после фильтра

Если так то всегда будет возвращать True, а если к примеру строка не имеет чисел тогда как проверить вхождение если результат всегда один и тот же???
Нет - вы просто не понимаете что там написано - о чем я и говорил вам ранее. Так что пройдите главу о циклах.


Ну и в целом:
Сначала прочитайте учебник хотябы до функций. Там есть ответы на ваши вопросы. Вы же прочитали 3 строчки и уже бегом на форум с вопросами - так это не работает.
И тут вопрос не в том что эти вопросы сами по себе глупые а в том что вы не понимаете ответов.
DMM
ZerG

Та я гуглю постоянно, просто не всегда можно найти объем той информации которая нужна. Много чего на инглише, а у меня с ним не очень лады увы((

Циклы начал изучать, на форуме для меня открывается больше инфы чем можно прочитать. Учу питон по курсам на ютубе в основном https://m.youtube.com/playlist?list=PLA0M1Bcd0w8yWHh2V70bTtbVxJICrnJHd ( Сергея Балакерева) и вот этот курс паралельно https://m.youtube.com/watch?v=GmMD6gQYWe4 (Егорова Артема) ну там к сожалению ни слова не было сказано о методе strip, и про translate и maketrans тоже увы((

Потому и приходится с простейшими вопросами на форум идти.

Может подскажите еще какой-то курс хороший более углубленный?
xam1816
DMM
Ну что делать если цифры в середине слова??? Как тогда определить??
все верно, strip удаляет только по краям слова.
тогда так
 s = 'земля-2023-земля'
r = set(s) - set('0123456789')
if r != set(s):
    print(True)
else:
    print(False)
Вообще это все дурачество, нужно пройтись по символам и как только наткнешься на цифру выдать True
DMM
Может подскажите еще какой-то курс хороший более углубленный?
с любого бесплатного курса задачи проходи
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB