@ABCser

Как можно оптимизировать код для склейки видео по запросу пользователя?

Добрый день!
Я совсем новичок, решил поэкспериментировать, поэтому заранее извиняюсь)
В общем, была задача такая:
-в папке лежат 33 видео с анимацией каждой буквы алфавита
-пользователь вводит слово, например, "abv"
-программа склеивает видео в нужном порядке и сохраняет в папке

Вопрос.
1) Можно ли как-то оптимизировать код? Может есть какие-то советы?
2) Как сделать так, чтобы видео сохранялось под названием, которое программа получила от пользователя на этапе ввода. (Если ввел "abvgd", то сохраняется файл abvgd.mp4)
Спасибо заранее!
from moviepy.editor import *

def final_list(x):
    lst = []
    for i in range(len(x)):
        if x[i] == 'a':
            lst.append(a)
        elif x[i] == 'b':
            lst.append(b)
        elif x[i] == 'v':
            lst.append(v)
        elif x[i] == 'g':
            lst.append(g)
        elif x[i] == 'd':
            lst.append(d)
    return lst

a = VideoFileClip("./Video/a.mp4")
b = VideoFileClip("./Video/b.mp4")
v = VideoFileClip("./Video/v.mp4")
g = VideoFileClip("./Video/g.mp4")
d = VideoFileClip("./Video/d.mp4")

user_input = input("Введите слово для получения видео: \n")

res = list(transliterate(user_input)) #модуль транслита я не прикладываю тут

final = concatenate_videoclips(final_list(res))
final.write_videofile("merged.mp4")
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
a = VideoFileClip("./Video/a.mp4")
b = VideoFileClip("./Video/b.mp4")

1. Если ты ловишь себя на создании переменных такого вида, тебе нужна коллекция. Открой для себя словари (dict).

2. Что мешает подставить введённую строку в имя файла?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы