Rumah >pembangunan bahagian belakang >Tutorial Python >Panduan teknikal untuk melaksanakan pembangunan modular skrip Python dalam sistem Linux
Panduan Teknikal untuk Melaksanakan Pembangunan Modular Skrip Python dalam Sistem Linux
Pengenalan:
Python adalah mudah dan mudah dipelajari dan Bahasa pengaturcaraan peringkat tinggi yang berkuasa, digunakan secara meluas dalam pembangunan dalam pelbagai bidang. Dalam sistem Linux, pembangunan modular skrip Python boleh meningkatkan kebolehselenggaraan dan kebolehgunaan semula kod secara berkesan serta mengurangkan kos pembangunan dan penyelenggaraan. Artikel ini akan memperkenalkan garis panduan teknikal tentang cara menggunakan Python untuk melaksanakan pembangunan modular dalam sistem Linux, dan menyediakan contoh kod khusus.
1. Gambaran keseluruhan pembangunan modular
Pembangunan modular adalah untuk membahagikan program besar kepada modul yang kecil, saling bergantung, dan berkomunikasi serta berinteraksi melalui antara muka antara modul. Ia membolehkan pembangun menumpukan pada reka bentuk dan pelaksanaan setiap modul, meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Untuk skrip Python, modul boleh menjadi fungsi, kelas atau fail skrip bebas.
2. Buat modul
# utils.py def add(a, b): return a + b def subtract(a, b): return a - b def multiply(a, b): return a * b def divide(a, b): return a / b
import
untuk mengimport modul yang telah ditentukan untuk digunakan dalam skrip semasa. Sebagai contoh, kami mencipta skrip bernama "main.py". Jika kami ingin menggunakan fungsi yang ditakrifkan dalam "utils.py", kami boleh mengimport dan memanggilnya dengan cara berikut: import
关键字来导入已经定义好的模块,以便在当前脚本中使用。例如,我们创建一个名为"main.py"的脚本,想要使用"utils.py"中定义的函数,可以通过以下方式导入并调用:# main.py import utils print(utils.add(1, 2)) # 输出:3 print(utils.subtract(5, 2)) # 输出:3 print(utils.multiply(2, 3)) # 输出:6 print(utils.divide(10, 2)) # 输出:5
# utils.py PI = 3.1415926 class Circle: def __init__(self, radius): self.radius = radius def area(self): return PI * self.radius ** 2 def circumference(self): return 2 * PI * self.radius
在其他脚本中可以如下使用:
# main.py import utils print(utils.PI) # 输出:3.1415926 circle = utils.Circle(5) print(circle.area()) # 输出:78.5398185 print(circle.circumference()) # 输出:31.415926
三、模块的文件组织
对于大型项目,一个模块可能不够,我们可以将相关的模块组织在同一个目录中,并提供一个入口文件。例如,我们创建一个名为"calculator"的目录,并将"utils.py"和"main.py"放在其中。
# calculator/utils.py def add(a, b): return a + b def subtract(a, b): return a - b ... # calculator/main.py import utils ...
在Linux系统中,可以通过以下方式运行"main.py"脚本:
$ python3 calculator/main.py
四、模块的测试
在开发过程中,我们经常需要对模块进行测试。Python提供了一些用于单元测试的框架和工具。例如,我们可以使用unittest
库编写测试用例,并在模块中添加一个if __name__ == "__main__":
# utils.py ... def divide(a, b): if b == 0: raise ValueError("除数不能为0") return a / b if __name__ == "__main__": import unittest class UtilsTestCase(unittest.TestCase): def test_add(self): self.assertEqual(add(1, 2), 3) def test_subtract(self): self.assertEqual(subtract(5, 2), 3) def test_multiply(self): self.assertEqual(multiply(2, 3), 6) def test_divide(self): self.assertEqual(divide(10, 2), 5) self.assertRaises(ValueError, divide, 10, 0) unittest.main()Module data enkapsulasi
Dalam modul, sebagai tambahan kepada fungsi, kita juga boleh mentakrifkan pembolehubah dan kelas serta mengaksesnya melalui modul. Ini membantu merangkum data dan tingkah laku yang berkaitan dalam modul. Sebagai contoh, kami mentakrifkan pemalar dan kelas dalam "utils.py":
$ python3 utils.py
3 . Organisasi Fail Modul
Untuk projek besar, satu modul mungkin tidak mencukupi. Sebagai contoh, kami mencipta direktori yang dipanggil "kalkulator" dan meletakkan "utils.py" dan "main.py" di dalamnya.unittest
dan menambah if __name__ == "__main__":
keadaan dalam modul untuk dilaksanakan apabila modul dijalankan secara terus ujian . Atas ialah kandungan terperinci Panduan teknikal untuk melaksanakan pembangunan modular skrip Python dalam sistem Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!