Форум сайта python.su
Добрый день. Помогите с решением задачи. Нужно подсчитать количество символов в строке '1a\u0398\t\u03B43s' ?
Если делать через len то оно считает не все символы, а только те что до слеша и после второго
a = '1a\u0398\t\u03B43s'
print(len(a))
Я только начал изучать Питон потому не знаю как сделать обычным способом не через циклы и тд.
Прикреплённый файлы:
Знімок екрана 2024-02-11 134801.png (9,7 KБ)
Офлайн
import codecs a = '1a\u0398\t\u03B43s' decoded_s = codecs.encode(a, 'unicode_escape') symbol_count = len(decoded_ss) print(symbol_count)
Офлайн
спасибо за подсказку, ну я еще такого не проходил. Только строки пока и нужно сделать именно используя методы строк.
Или это не возможно?
Офлайн
что бы работать со стоками надо подавать на вход строку а а не юникод символы
Офлайн
DMMНу семь символов там
Нужно подсчитать количество символов в строке ‘1a\u0398\t\u03B43s’ ?
>>> '1a\u0398\t\u03B43s' '1aΘ\tδ3s' >>> len(_) 7 >>>
Отредактировано py.user.next (Фев. 11, 2024 14:45:12)
Офлайн
py.user.next
Офлайн
ZerG
что бы работать со стоками надо подавать на вход строку а а не юникод символы
Офлайн
делаю вот так:
a = str(input().split())
print(len(a))
оно пишет что символов 25, а не 18???
почему так???
Офлайн
Ты не понимаешь что ты делаешь
https://pyneng.readthedocs.io/ru/latest/book/16_unicode/python_3_unicode.html
строки - неизменяемая последовательность Unicode-символов. Для хранения этих символов используется тип строка (str)
'\u0398' - символ
Офлайн
DMMПотому что это всё - один символ.
а почему то что в середине слешей не считается символом?
>>> 'Θ' == '\u0398' True >>> '\u0398' 'Θ' >>>
DMMВыведи на экран то, что находится в a, и сравни.
делаю вот так:a = str(input().split()) print(len(a))
оно пишет что символов 25, а не 18???
почему так???
>>> s = input() \u0398 >>> s '\\u0398' >>>
Отредактировано py.user.next (Фев. 11, 2024 18:51:26)
Офлайн