Heim > Backend-Entwicklung > Python-Tutorial > So schreiben Sie eine Python-Header-Datei

So schreiben Sie eine Python-Header-Datei

爱喝马黛茶的安东尼
Freigeben: 2019-06-26 09:47:33
Original
18259 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich Python2 als Beispiel verwendet. Zuerst werde ich den Programmierstil von Python-Header-Dateien vorstellen und Ihnen dann eine detaillierte Einführung in die grundlegende Verwendung des Importteils geben. Diese beiden Teile sind die Komponenten der Header-Datei in Python.

So schreiben Sie eine Python-Header-Datei

Programmierstil

#!/usr/bin/env python     #在文件头部 ( 第一行 ) 加上   设置 Python 解释器  
# -*- coding: utf-8 -*-  #在文件头部 ( 第二行 ) 加上   在编辑器中设置以 UTF-8 默认编码保存文件  
# Copyright (c) ***   #版权信息放在文件头部,文件编码之后    
# docstring 是Python特有的注释风格,它是模块、类或函数的第一个语句,可以通过__doc__方法访问   
# 用英语撰写注释,短注释可以忽略末尾的句号 (.)  
# docstring 为每个模块、类或函数撰写 
docstring 推荐使用三个双引号(”””) 来定义
docsting , 不推荐使用三个单引号 (''')  # 模块的 docsting 放在文件头部,版权信息之后    
”””This is a one line docstring.”””  
”””The title of a multiline docstring:  After title is the content.You can write it as long 
as needed.  ”””    # 把 import 语句放在文件头部,在模块 docstring 之后,在模块全局变量或全局常量之前  
# 按照从一般到特殊的原则分组 
import 语句,先 import 标准库,然后 import 第三方库,最后 import 程序中的自定义库  
# 在不同分组的 import 语句之间加空行   # 每个 import 语句只导入一个模块    
import sys   
import time    
from PyQt.QtCore import SIGNAL, QTimer    #  在终端中使用中文字符  在文件头部加上  
# import sys   
# reload(sys)   
# sys.setdefaultencoding('utf-8')
Nach dem Login kopieren

Verwandte Empfehlungen: „Python Video Tutorial

Importieren

1. Anwendung von Systembibliotheken

Die hier genannten Systembibliotheken beziehen sich im Allgemeinen auf Bibliotheken, die mit Python-Software geliefert werden, nicht auf Bibliotheken, die von Drittanbietern installiert werden. Wenn beispielsweise „sys“ importiert wird, wie wird es gedruckt?

>>> import sys
>>> print sys
<module &#39;sys&#39; (built-in)>
Nach dem Login kopieren

Dies zeigt, dass die Sys-Bibliothek wahrscheinlich in Python eingebettet ist und es keine Möglichkeit gibt, sie zu löschen. Sind alle Bibliotheken so? Wir können os ausprobieren:

>>> import os
>>> print os
<module &#39;os&#39; from &#39;/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.pyc&#39;>
Nach dem Login kopieren

Offensichtlich wird die os-Bibliothek hier von pyc bereitgestellt, daher scheint sys in Bezug auf die Priorität immer noch wichtiger zu sein.

2. Bibliotheken von Drittanbietern

Die sogenannten Bibliotheken von Drittanbietern sind Bibliotheken, die über die Installation von python setup.py, pip oder apt-get install installiert werden. Es gibt viele solcher Bibliotheken, die ich häufig verwende, darunter Webpy, Twisted, CV2, Sklearn und Wxpython. Diese Bibliotheken liegen ausnahmslos in Form von Pyc vor. Werfen wir zum Beispiel einen Blick auf webpy:

>>> import web
>>> print web
<module &#39;web&#39; from &#39;/usr/local/lib/python2.7/site-packages/web.py-0.40.dev0-py2.7.egg/web/__init__.pyc&#39;>
Nach dem Login kopieren

3. Lokale Verzeichnisdateireferenz

Wenn es sich um eine lokale Dateireferenz handelt, ist die Methode eigentlich sehr einfach, importieren Sie sie einfach direkt. Wenn der Import erfolgreich ist, generiert Python die Pyc-Datei der entsprechenden Datei. Wenn exer1.py beispielsweise auf die Funktion in exer2.py verweisen möchte, kann es Folgendes tun:

import exer2
Nach dem Login kopieren

oder

from exer2 import *
Nach dem Login kopieren

Zweitens ist zu beachten, dass diese Methode nicht nur anwendbar Für Python gilt es auch für dynamische Bibliotheksdateien. Wir wissen, dass wir zur Erweiterung der Python-Funktionen manchmal C-Dateien schreiben müssen, um dynamische Bibliotheken für die Verwendung durch Python zu generieren. Interessierte Studierende können auf diesen Link verweisen. Wenn Sie zu diesem Zeitpunkt auf eine dynamische Bibliotheksdatei verweisen müssen, importieren Sie einfach den Dateinamen direkt.

4. Referenz-Unterverzeichnisdateien

Zusätzlich zu Geschwisterverzeichnis-Referenzen werden häufig auch Unterverzeichnis-Referenzen verwendet. Beispielsweise befinden sich exer1.py und das Unterverzeichnis im selben Ordner. Wenn exer1.py unter sub auf exer2.py verweisen möchte, was sollte es tun? Stellen Sie zu diesem Zeitpunkt sicher, dass sich im Unterverzeichnis eine Datei __init__.py befindet.

from sub import exer2
Nach dem Login kopieren

oder

from sub.exer2 import *
Nach dem Login kopieren

5. Unterverzeichnisse beziehen sich auf das übergeordnete Verzeichnis

Manchmal verwendet das Unterverzeichnis einige der übergeordneten Verzeichnisse oder andere Verzeichnisse (ähnlich dem Util-Verzeichnis). Funktionen erfordern häufig Rückverweise. Zu diesem Zeitpunkt ist die sys-Bibliothek praktisch. Angenommen, exer1.py und das Unterverzeichnis befinden sich auf derselben Ebene und es gibt eine Datei exer2.py im Unterverzeichnis. Zu diesem Zeitpunkt möchte exer2.py auf die Funktionen von exer1.py verweisen, dann kann es dies tun :

import sys
sys.path.append(&#39;../&#39;)
import exer1
Nach dem Login kopieren

oder

import sys
sys.path.append(&#39;../&#39;)
from exer1 import *
Nach dem Login kopieren

6. Querverweis

Wenn es zwei Dateien gibt, die einen Querverweis aufweisen, empfehle ich Ihnen, die Referenz einer Datei dabei beizubehalten Zeit, und fügen Sie beispielsweise die Referenz der anderen Datei unter die Funktion ein. Sagen Sie etwa Folgendes:

def process():
    import exer1
    exer1.add()
Nach dem Login kopieren

7. Vorschläge zur Reihenfolge der Importdateien

Bezüglich der Reihenfolge der Importdateien unter Python, meine persönliche Erfahrung ist, dass diese Anordnung sinnvoller ist,

eingebaute Systembibliotheken

Andere Systembibliotheken

Bibliotheken von Drittanbietern

Unterverzeichnis Bibliotheken

Andere lokale Dateien usw.

Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Python-Header-Datei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage