Pandangan pertama pada fail modul Python


Apakah itu modul? . borang modul. Salah satu fail modul direka bentuk sebagai fail utama (atau fail peringkat atasan).


Modul import:

Di sini kami akan membuat contoh paling mudah, yang akan dibincangkan dengan lebih terperinci kemudian. Di sini, letakkan skrip1 yang anda baru tulis di tempat kami memasang Python:


Kemudian mula-run-python:






Modul hanya boleh diimport sekali sahaja
Mengimport adalah operasi yang sangat mahal, jadi ia hanya boleh diimport sekali setiap program dijalankan. Jika anda ingin menjalankannya semula, anda perlu memanggil fungsi muat semula terbina dalam:
Perbezaan antara import dan muat semula ialah import tidak memerlukan tanda kurungan dan merupakan pernyataan, manakala muat semula ialah fungsi yang nilai pulangannya ialah objek modul python.
Modul memainkan peranan perpustakaan alat: modul selalunya merupakan enkapsulasi nama pembolehubah dan boleh dianggap sebagai ruang nama dalam pakej ialah atribut, atau dengan kata lain, atribut ialah nama pembolehubah yang terikat pada objek tertentu . Modul biasanya boleh dibaca dengan dua pernyataan Python: import dan dari, dan penggunaan fungsi muat semula Pernyataan import merujuk modul secara keseluruhan, yang bersamaan dengan memperkenalkan objek kelas. Anda akan faham dengan melihat kesan di bawah. myfile dirujuk sebagai modul, dan kemudian script1 boleh menggunakan sifat myfile.

Kaedah rujukan lain:
Seperti yang ditunjukkan dalam gambar, dari dan import adalah sangat serupa, kecuali penugasan yang terakhir adalah menambah nama salinan Properties modul, jadi ia boleh diimport sebagai tajuk dan bukannya objek myfile.
    • Kami akan bercakap tentang pengetahuan modul secara terperinci dalam bab berikut. Beberapa rakan bertanya mengapa import tidak dilaksanakan secara langsung seperti #include dalam C++, yang kemudiannya boleh memanggil kaedah dan sifat modul ini. Berikut adalah penjelasannya. Bukan kaedah modul ini tidak boleh dipanggil, tetapi contoh di atas adalah agak mudah. ​​Ia tidak melibatkan enkapsulasi kelas dan hanya mempunyai beberapa pernyataan pelaksanaan. Contoh yang diberikan di bawah adalah contoh modul mudah. Dalam contoh ini, Worker.py mentakrifkan kelas Worker dan modul luaran diimport melalui Import Worker untuk melaksanakan operasi berkaitan.




    • import&dari versi ringkasan:



    dir(myfile) adalah untuk mendapatkan semua atribut dalam myfile, di mana , Yang bergaris bawah di hadapan ialah nama pembolehubah terbina dalam Python yang dipratentukan


    Konsep modul lain:


    Modul ialah struktur atur cara terbesar program Python
      dan modul fail lengkap
    • pakej pembolehubah , iaitu ruang nama
    • execfile('myfile.py') ialah satu lagi cara pelaksanaan program, tetapi pada asasnya ia tidak mengimport modul

    modul Python yang biasa digunakan


      perbandingan python diff modul
    • modul ular sawa tarikh masa untuk memproses tarikh dan masa
    • pengesanan pengekodan rentetan/fail Chardet (sangat berguna)
    • adodb:我们领导推荐的数据库连接组件
      bsddb3:BerkeleyDB的连接组件
      Cheetah-1.0:我比较喜欢这个版本的cheetah
      cherrypy:一个WEB framework
      ctypes:用来调用动态链接库
      DBUtils:数据库连接池
      django:一个WEB framework
      docutils:用来写文档的
      dpkt:数据包的解包和组包
      MySQLdb:连接MySQL数据库的
      py2exe:用来生成windows可执行文件
      Pylons:我们领导推荐的web framework
      pysqlite2:SQLite的连接组件
      pythonwin:Python的Windows扩展
      setuptools:无奈,PEAK的一套python包管理机制
      sqlalchemy:数据库连接池
      SQLObject:数据库连接池
      twisted:巨无霸的网络编程框架
      wxPython-2.6:因为需要保持与linux相同的版本才没用最新的,GUI编程框架
      pypcap:抓包的
      python-dnet:控制网络安全的其他设备
      pyevent:Python的事件支持
      pydot:画图的,graphiz
      sendpkt:Python发包
      simplejson:JSON的支持
      
      
      DPKT:raw-scoket网络编程
      Cx-oracle:连接oracle的好东东
      Mechanize:爬虫连接网站常用
      PIL:图像处理工具包
      
      
      reportlab for PDF 文件。
      PyQt4 for GUI界面
      
      feedparser: rss解析
      chardet:编码检测
      scons: 项目构建工具,写好了模板用起来还是很方便的
      scapy: 网络包构建分析框架,可编程的wireshark,有兴趣的google “Silver Needle in the Skype”
      pefile: windows pe文件解析器
      winpdb: 自己的程序或者用别的库不太明白的时候就靠它了
      pywmi: 省了好多折腾功夫
      pylint: 培养良好的编码习惯
      
      
      下面是准备用的,不做评论:
      
      pygccxml
      pyparsing
      pymacs
      idapython
      paimei
      pysvn
      pyLucene
      wikidpad
      
      
      1.Python操作PDF文件
      2.Python連接PostgreSQL引擎
      3.Python的.NET2.0的曲線表
      
      http://pybrary.net/
      —————————————————–
      1.Python Image Libary
      2.Tkinter Libary
      
      http://www.pythonware.com/index.htm
      —————————————————–
      1.Karrigell
      
      http://karrigell.sourceforge.net/
      —————————————————–
      1.The Standard Python Libary
      
      http://effbot.org/librarybook/
      —————————————————–
      1.Python操作PDF的Libary
      
      http://reportlab.org/
      —————————————————–
      1.Python cURL Libary
      
      http://pycurl.sourceforge.net/
      —————————————————–
      1.urlgrabber
      
      http://linux.duke.edu/projects/urlgrabber/
      —————————————————–
      1.MySQL-Python
      
      http://mysql-python.sourceforge.net/
      —————————————————–
      1.pyScripter
      2.Python for Delphi
      
      http://mmm-experts.com/Products.aspx
      —————————————————–
      1.Python Cookbook
      
      http://aspn.activestate.com/ASPN/Python/Cookbook/
      —————————————————–
      1.pygame
      
      http://www.pygame.org/news.html
      ——————————————————
      1.pymedia
      
      http://www.pymedia.org
      
      ——————————————————
      1.pydbf
      
      http://dbfpy.sourceforge.net/
      ——————————————————
      1.Pexpect
      
      http://pexpect.sourceforge.net/
      ——————————————————
      1.dabo
      desktop application frameworks
      
      http://dabodev.com/
      ——————————————————
      1.pySerial
      
      http://pyserial.sourceforge.net/
      http://wiki.woodpecker.org.cn/moin/PySerial
      ——————————————————
      1.python’s doc
      
      http://wiki.woodpecker.org.cn/moin/PythonZhDoc
      ——————————————————
      1.The Visual Module of VPython(3D)
      
      http://vpython.org/index.html
      ——————————————————
      1.PyLucene
      
      http://pylucene.osafoundation.org/
      ——————————————————
      1.DBUils
      
      http://www.webwareforpython.org/DBUtils
      ——————————————————
      1.http://happyiww.popo.blog.163.com/blog/
      
      a good people’s blog
      ——————————————————
      1.AppleScript,OSAComponents,HtmlCalendar
      
      http://freespace.virgin.net/hamish.sanderson/index.html
      ——————————————————
      1.Pypcap
      
      http://code.google.com/p/pypcap/
      http://monkey.org/~dugsong/dpkt/
      http://www.winpcap.org/install/default.htm
      
      
      python-memcached client module for memcached
      
      
      Kodos,python的正则表达式调试工具,
      
      
      
      PLY (Python Lex-Yacc)
      http://www.dabeaz.com/ply/
      正在用它写汇编器.
      
      wxPython - GUI Framework
      omniORBpy - CORBA Library
      ZODB3 - an OODB implement
      ReportLab - PDF generating solution
      numpy+scipy+matplotlib
      
      
      hachoir 各种多媒体元数据解析
      python-orge 演示用
      
      数据库的:
      sqlalchemy
      sqlobject
      MySQL-python (easy_install的时候就是这个名字)
      
      
      routes
      beaker
      
      两个模板引擎:
      genshi
      mako
      
      paster
      
      
      另外还有知道的
      PyCrypto 加密的
      paramiko 这个可以帮你写sftp,比twisted里面的那个好用一些
      
      twisted 写服务器玩的
      
      PyOpenGL
      
      PyGame
      
      Psyco 传说可以加速你的python程序
      
      PIL (Python Image Library) 处理图片
      
      PyObjC 这个是苹果上用的,写Cocoa程序
      
      
      Python desktop client GUI application:
      wxPython
      PyOpenGL
      PyXML
      ZSI
      davlib.py
      
      ChartDirector
      一个支持多种语言的图表库,无论是效果还是效率,都比jfreechart高。