Olá Gabriel! Tudo bem?
Seguinte, os imports de Python funcionam da seguinte forma. Você concorda comigo que todo arquivo é capaz de criar um conjunto de funções com um propósito específico? Exemplo: A função somar(), você conscientemente subentende o que ela vai realizar, correto? Pois bem, agora vamos pensar que temos várias funções em um arquivo, sendo estas respectivamente: somar(), subtrair(), dividir(), multiplificar(), logaritmizar() e assim por diante. Todas essas funções estão armazenadas em um único arquivo, você consegue sugerir um bom nome para este arquivo?
a) Papel
b) Mamão
c) Tesoura
d) Operações
Pois bem, o melhor nome de arquivo seria operações correto? Então, dessa forma você já concorda comigo que as funções e os nomes dos arquivos servem para agrupar um conjunto de funções que tem funcionalidades globais, correto? Desta forma, quando possuímos um sistema, por exemplo, temos muitas funções que são utilizadas em várias partes do sistema, e assim como utilizamos os módulos Python de random, podemos utililzar os nossos próprios módulos. Não é bacana? Desta forma, evitamos a repetição de código e conseguimos concentrar as responsabilidades de acordo com cada nicho de atuação das funções.
Outro detalhe, as importações funcionam de acordo com a vontade do desenvolvedor, ela não possui uma regra de fato para poder ser executada, tudo vai de acordo com o padrão do desenvolvimento, claro, não precisamos deixar cada arquivo com um função, e ao invés de chamar funções, chamar os arquivos propriamente ditos, não. Por mais que não existam REGRAS, existem BOAS PRÁTICAS. E aí, você vai aprendendo com o tempo e os Frameworks da vida, como Django, Flask e etc. Vão te auxiliar nessa organização. Acho muito bacana você possuir essa dúvida, no entanto. É um preocupação que você mesmo conseguirá absorver naturalmente.
Forte abraço e bons estudos!