TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #309 · 2 фев.

Метод строки split() разделяет строку на несколько строк по указанному символу >>> "a_b_c".split('_') ['a', 'b', 'c'] Можно указать максимальное количество разделений >>> "a_b_c".split('_', 1) ['a', 'b_c'] Или резать с другой стороны с помощью rsplit() (right split) >>> "a_b_c".rsplit('_', 1) ['a_b', 'c'] А что будет если оставить аргументы пустыми? >>> "a_b_c".split() ['a_b_c'] Получаем список с одним элементом, потому что по умолчанию используется пробельный символ. >>> "a b c".split() ['a', 'b', 'c'] То есть это равнозначно такому вызову? >>> "a b c".split(" ") ['a', 'b', 'c'] Кажется да, но нет! Давайте попробуем добавить пробелов между буквами >>> "a b c".split(" ") ['a', '', '', 'b', '', '', 'c'] И вот картина уже не так предсказуема 😕 А вот что будет по умолчанию >>> "a b c".split() ['a', 'b', 'c'] Всё снова красиво! 🤩 По умолчанию в качестве разделителя используется любой пробельный символ, будь то табуляция или новая строка. Включая несколько таких символов идущих подряд. А также игнорируются пробельные символы по краям строки. >>> "a\t b\n c ".split() ['a', 'b', 'c'] Аналогичный способ можно собрать с помощью регулярного выражения. Но пробелы по краям строки придется обрабатывать дополнительно. >>> import re >>> re.split(r"\s+", ' a b c '.strip()) ['a', 'b', 'c'] Здесь тоже можно указать количество разделений >>> re.split(r"\s+", 'a b c', 1) ['a', 'b c'] А что если мы хотим написать красиво, то есть split() без аргументов, но при этом указать количество разделений? В этом случае первым аргументом передаём None >>> "a\n b c".split(None, 1) ['a', 'b c'] Данный метод не учитывает строки с пробелами, взятые в кавычки 'a "b c" '.split() ['a', '"b', 'c"'] Но для таких случаев есть другие способы. #tricks#basic

Резултати

Пронајдени 1 слични објави

Пребарај: #aipoweredmetaverse

当前筛选 #aipoweredmetaverse清除筛选
Метаверсошная

@olya_tashit · Post #3329 · 16.12.2024 г., 07:02

Поглядываю, куда движется наш прости господи AI-powered метаверс. Сегодня пару слов про вклад компании Niantic - это ребята, которые делали покемон го (а потом оказалось, что они так нас заставляли собирать данные о физическом мире. Умно 😂) У Ниантика есть идея-фикс - оцифровать весь мир в 3D виде и перенести на карту. И для этого у них есть сервис Scaniverse (на iOS и Андроидах). Ставите, выбираете, как будете сканировать - обычным методом, известным как фотограмметрия, или методом gaussian splatting. Разница между первым и вторым в том, что первый дает на выходе капец какую тяжелую 3D модель из полигонов, а второй создает 3D сцену из "размытых пятен", которая описывается математической гауссовой функцией (не спрашивайте, я гуманитарий 😭) Короче, это быстрее и эффективнее. ИИ помогает эти пятна вычислять и улучшать. И считается, что это и есть наш путь к легкому и быстрому созданию 3D контента, примерно как сейчас мы снимаем видео. Хотя мне не нравится то, как GS модели выглядят сейчас - вблизи они выглядят как вермишель. Но со временем станет лучше. Так вот, Scaniverse. Я не особо стараясь отсканила Егора на балконе (Егор - это растение), телефон у меня уже староват для этих ИИ извращений (Pixel 6), а обработка скана происходит на устройстве. Так что он нагревался 20 минут, а потом выдал вот такой скан - ссылка. Также Ниантик выпустили сервис на шлемы Квест для просмотра всего этого великолепия в виаре. Сервис надо запускать, открыв браузер на квесте, и набрав ссылку intothescaniverse.com Егором полюбоваться у меня не получилось, потому что они еще не сделали авторизацию для андроида. Но чужие сканы и сам сервис мне понравились - записала видосик. Особенно эффект и звук открывания моделек, когда прыгаешь внутрь. Что-то такое из sci-fi фильмов про телепортацию. #AI#Niantic#GaussianSplatting#AIPoweredMetaverse