Я создаю интерфейс для сценариев Python. Позже я буду писать сценарии Python также для автоматического тестирования. Это необходимо, чтобы я использовал класс в своем коде. Теперь я создал код со словарями, списками, функциями, глобальными и локальными переменными.
Нужен ли урок?
Помогите мне в этом.
пожалуйста, объясните «интерфейс для сценариев Python». Это интерфейс для сценария Python или интерфейс, использующий код Python?






Нет, конечно, класс не обязательным. Поскольку Python - это язык сценариев, вы можете просто кодировать свои сценарии, не определяя свои собственные классы. Классы полезны, если вы реализуете более сложную программу, которая требует структурированного подхода, и преимущества ООП (инкапсуляция, полиморфизм) помогают вам в этом.
Необязательно, чтобы это работало, но я бы сказал, что будет сложно поддерживать, если вы не инкапсулируете определенные вещи в классы. Классы - это то, что может помочь программисту упорядочить свой код, а не просто приятное занятие.
Нет, вам не нужно использовать классы для написания сценариев.
Однако, когда вы начнете использовать фреймворк модульного тестирования unittest, он будет включать классы, поэтому вам нужно хотя бы понять, как подклассифицировать класс TestCase, например:
import unittest
import os
class TestLint(unittest.TestCase):
def testLintCreatesLog(self):
# stuff that does things to create the file lint.log removed...
assert os.path.exists('lint.log') # this should be here after lint
assert os.path.getsize('lint.log') == 0 # nothing in the log - assume happy
if __name__ == '__main__':
# When this module is executed from the command-line, run all its tests
unittest.main()
С другой стороны, отличная среда тестирования носа не требует создания подклассов, как и py.test. Нос - в значительной степени лучшая вещь для модульного тестирования на Python, ИМХО.
не требуется, поскольку python не является чисто объектно-ориентированным языком, но некоторые вещи лучше писать в классах (инкапсуляция). становится проще построить большой проект с использованием классов
в чем причина этого комментария. Скажите, что если вы не можете дать ответ