1C:
// это комментарий
python:
# это комментарий
1C:
Цена = 100;
python:
price = 100
1C:
Процедура Тест()
Цена = 100;
КонецПроцедуры
python:
def test():
price = 100
1C:
Перем Количество;
Перем Сумма;
Процедура Тест()
Цена = 100;
Сумма = Цена * Количество;
КонецПроцедуры
Количество = 5;
Сумма = 0;
python:
quantity = 5
amount = 0
def test():
price = 100
global amount # это указание что мы хотим изменить глобальную переменную
amount = price * quantity
1C:
Функция Сумма(Знач Цена, Знач Количество = 1)
Возврат Цена * Количество;
КонецФункции
python:
def amount(price, quantity=1):
return price * quantity
1C:
Сумма = Сумма(10)
python:
x = amount(10) # если присвоим в amount, то затрем функцию
# альтернативный вариант
x = amount(price=10)
1C:
Имена = Новый Массив;
Имена.Добавить("Саша");
Имена.Добавить("Маша");
python:
names = []
names.append("Саша")
names.append("Маша")
# альтернативный вариант:
names = [
"Саша",
"Маша",
]
1C:
Для Каждого Имя Из Имена Цикл
Сообщить(Имя);
КонецЦикла;
python:
for name in names:
print(name)
1C:
Если Имена.Найти("Катя") <> Неопределено Тогда
Сообщить("Катя присутствует!");
КонецЕсли;
python:
if "Катя" in names:
print("Катя присутствует!")
1C:
Индекс = Имена.Найти("Катя");
Если Индекс <> Неопределено Тогда
Сообщить(Индекс);
КонецЕсли;
python:
if "Катя" in names:
index = names.index("Катя") # вызовет ошибку если значения нет в массиве
print(index)
1C:
Возраст = Новый Соответствие;
Возраст["Саша"] = 18;
Возраст["Маша"] = 19;
python:
age = {}
age["Саша"] = 18
age["Маша"] = 19
# альтернативный вариант:
age = {
"Саша": 18,
"Маша": 19,
}
1C:
Для Каждого Элемент Из Возраст Цикл
Сообщить(Элемент.Ключ + ": " + Строка(Элемент.Значение));
КонецЦикла;
python:
for key, value in age.items():
print(key + ": " + str(value))
# альтернативный вариант:
for item in age.items():
print(item[0] + ": " + str(item[1]))
# альтернативный вариант:
for key in age:
print(key + ": " + str(age[key]))
1C:
ВозрастКати = Возвраст["Катя"];
Если ВозрастКати <> Неопределено Тогда
Сообщить(ВозрастКати);
КонецЕсли;
python:
kate_age = age.get("Катя") # обращение через квадратные скобки выдаст ошибку если ключа нет
if kate_age is not None:
print(kate_age)
1C:
Если Возраст["Катя"] <> Неопределено Тогда
Сообщить(Возраст["Катя"]);
КонецЕсли;
python:
if "Катя" in age:
print(age["Катя"])
1C:
Для Индекс = 1 По 10 Цикл
Сообщить(Индекс);
КонецЦикла;
python:
for i in range(1, 11):
print(i)
1C:
Индекс = 0;
Пока Индекс < 10 Цикл
Сообщить(Индекс);
Индекс = Индекс + 1;
КонецЦикла;
python:
i = 0
while i < 10:
print(i)
i += 1
1C:
Сотрудник = Новый Структура("Имя, Возраст", "Катя", 19);
Сообщить(Сотрудник.Имя);
python:
class Employee:
def __init__(self, name, age):
self.name = name
self.age = age
employee = Employee("Катя", 19)
print(employee.name)
# альтернативный вариант:
from dataclasses import dataclass
@dataclass
class Employee:
name: str
age: int
employee = Employee("Катя", 19)
print(employee.name)
1C:
Сотрудник.Вставить("Пол", "Мужской");
Сообщить(Сотрудник.Пол);
python:
employee.gender = "male"
print(employee.gender)
1C:
Имя = "Катя";
Возраст = 19;
Сообщить(СтрШаблон("%1: %2", Имя, Возраст));
python:
name = "Kate"
age = 19
print(f"{name}: {age}")
1C:
Сообщить(СтрСоединить(Имена, Символы.ПС));
python:
print("\n".join(names))
1C:
Сумма = Цена * ?(Количество > 0, Количество, 1);
python:
amount = price * (quantity if quantity > 0 else 1)
# альтернативный вариант:
amount = price * (quantity > 0 and quantity or 1)
1C:
Если Икс = 0 Или Икс = Неопределено Тогда
Сообщить("пусто")
ИначеЕсли 0 < Икс И Икс < 10 Тогда
Сообщить("от 1 до 9")
Иначе
Сообщить("меньше 0 или больше 9")
КонецЕсли;
python:
if x == 0 or x is None:
print('пусто')
elif 0 < x and x < 10:
print('от 1 до 9')
else:
print('меньше 0 или больше 9')
# альтернативный вариант
if x == 0 or x == None: # сравнивать через `==` с None не рекомендуется
print('пусто')
elif 0 < x < 10: # да, так можно
print('от 1 до 9')
else:
print('меньше 0 или больше 9')
1C:
ЧтениеТекста = Новый ЧтениеТекста;
ЧтениеТекста.Открыть("log.txt", "UTF-8");
Сообщить(ЧтениеТекста.Прочитать());
ЧтениеТекста.Закрыть();
python:
with open('log.txt', 'r', encoding='utf-8') as file: # файл сам закроется после with
print(file.read())
# альтернативный вариант
with open('log.txt', 'r', encoding='utf-8-sig') as file:
print(file.read())
1C | python |
---|---|
Подстрока = Сред(Текст, 2, 2); | substr = text[1:3] |
Если СтрНачинаетсяС(Текст, "ВЫБРАТЬ") Тогда | if text.startswith("ВЫБРАТЬ"): |
Если СтрЗаканчиваетсяНа(Текст, "КОНЕЦ") Тогда | if text.endswith("КОНЕЦ"): |
Текст = СокрЛ(Текст); | text = text.lstrip() |
Текст = СокрП(Текст); | text = text.rstrip() |
Текст = СокрЛП(Текст); | text = text.strip() |
Текст = ВРег(Текст); | text = text.upper() |
Текст = НРег(Текст); | text = text.lower() |
Текст = ТРег(Текст); | text = text.capitalize() |
Текст = Лев(Текст, 2); | text = text[:2] |
Текст = Прав(Текст, 2); | text = text[-2:] |