from itertools import zip_longest

raspisanie = [
    ["Русский язык", "o", "o", "o", "o", "o", "o"],
    ["Математика", "o", "o", "o", "o", "o"],
    ["Физика", "o", "o", "o", "o"],
]

for z in zip_longest(*raspisanie, fillvalue="-"):
    print(*z, sep=" | ")
