Полезные функции и методы

Приветствую! Здесь вы наверняка найдете, что ищете. Примеры в лаборатории рассчитаны на то, что мы разбираем что-то конкретное.

Текущая статья посвящена справочник встроенных операций: строки, коллекции, даты, I/O и валидация в Python, JS, C#, Java, Go..

Поэтому за теорией по текущей теме вам — в энциклопедию. Если ещё не погружались, то маршрут прост:

  1. Основы
  2. Система и сеть
  3. Данные и разметка
  4. Код и разработка
  5. Языки
  6. Искусственный интеллект
  7. Проект
  8. Инфраструктура и безопасность
  9. Спин-офф

Обязательно пройдитесь.

А теперь приступим к нашему предмету.

Теория и соседние материалы

Строки

Задача Python JavaScript Java C#
Длина len(s) s.length s.length() s.Length
Регистр s.upper() / lower() toUpperCase() toUpperCase() ToUpper()
Обрезка пробелов s.strip() trim() strip() Trim()
Замена replace(old, new) replace() replace() Replace()
Разбиение split(sep) split(sep) split(regex) Split()
Содержит подстроку sub in s includes() contains() Contains()
Начинается с startswith() startsWith() startsWith() StartsWith()

Пример: нормализация email (Python)

email = raw.striplower()
if "@" not in email:
    raise ValueError("invalid email")

Коллекции (списки / массивы)

Задача Python JavaScript Java C#
Добавить в конец append push add Add
Длина len length size() Count
Срез lst[a:b] slice(a,b) subList GetRange
Поиск in / index includes / indexOf indexOf IndexOf
Сортировка sorted(lst) sort() / toSorted() Collections.sort OrderBy
Фильтр comprehensions / filter filter streamfilter Where
Преобразование map map streammap Select

Пример: уникальные значения (JavaScript)

const unique = [..new Set(items)];

Словари / Map

Python JavaScript Java C#
dict[key] obj[key] / Map Map<K,V> Dictionary<K,V>
d.get(k, default) map.get(k) ?? def getOrDefault TryGetValue
d.keys() Object.keys() keySet() Keys

Даты и время

Задача Python JavaScript Java C#
Сейчас datetime.now() new Date() LocalDateTime.now() DateTime.Now
UTC datetime.now(timezone.utc) toISOString() Instant.now() DateTime.UtcNow
Формат strftime toLocaleString DateTimeFormatter :yyyy-MM-dd
Разница timedelta разница Date Duration / Period TimeSpan
Часовые пояса

Храните моменты времени в UTC, отображайте в локали пользователя на клиенте или через явный timezone id.


Ввод-вывод

Язык Консоль Файл чтение
Python input() open(), pathlib
JavaScript readline (Node) fs.promises.readFile
Java Scanner Files.readString
C# Console.ReadLine File.ReadAllText

Правило: для больших файлов — потоковое чтение построчно, не загружайте гигабайты в память.


Преобразование типов

Задача Python JavaScript C#
Строка → число int(s), float(s) parseInt, Number int.Parse
Число → строка str(n) String(n) n.ToString()
Проверка числа try/except Number.isNaN int.TryParse

JSON

Python JavaScript C#
json.loads / dumps JSON.parse / stringify JsonSerializer

Всегда оборачивайте разбор JSON в обработку ошибок формата.


Математика

Python JavaScript C#
math.sqrt, round Math.sqrt, Math.round Math.Sqrt, Math.Round
min, max Math.min, Math.max Math.Min, Math.Max

Практические советы

  1. Именование: функция делает одно действие — parseDate, loadUsers.
  2. Границы: проверяйте null, пустые строки, пустые коллекции.
  3. Иммутабельность: где возможно, не мутируйте исходный массив (возвращайте новый).
  4. Документация: официальные docs языка — первый источник перед Stack Overflow.

Чек-лист

  • Для задачи выбран встроенный метод, а не самописный цикл.
  • Учтена кодировка и локаль при работе со строками и датами.
  • Ошибки преобразования типов обрабатываются явно.