Heim  >  Artikel  >  Backend-Entwicklung  >  Verwandte Einführung in Python-Module

Verwandte Einführung in Python-Module

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-06-14 15:12:352120Durchsuche

Was ist ein Modul?

Verwandte Empfehlungen: „Python-Video

Verwandte Einführung in Python-Module

Im Prozess der Computerprogrammentwicklung Da immer mehr Programmcode geschrieben wird, wird der Code in einer Datei immer länger und die Wartung wird immer schwieriger. Um wartbaren Code zu schreiben, gruppieren wir viele Funktionen und legen sie in verschiedenen Dateien ab. Auf diese Weise enthält jede Datei relativ wenig Code. In Python ist eine .py-Datei ein Modul. Die Vorteile?

1. Der größte Vorteil besteht darin, dass es die Wartbarkeit des Codes erheblich verbessert. Zweitens müssen Sie beim Schreiben von Code nicht bei Null anfangen von anderen Modulen. Beim Schreiben von Programmen verweisen wir häufig auf andere Module, einschließlich in Python integrierter Module und Module von Drittanbietern. 2. Durch die Verwendung von Modulen können Konflikte zwischen Funktionsnamen und Variablen vermieden werden , also derselbe Name Die Funktionen und Variablen können sich in verschiedenen Modulen befinden. Wenn wir das Modul selbst schreiben, müssen wir den Namenskonflikt mit anderen Modulen nicht berücksichtigen

Modulklassifizierung

Module sind in 3 Kategorien unterteilt: 1. Integriertes Standardmodul, auch bekannt als: Standardbibliothek, führen Sie (help'modules') aus, um die Liste aller erstellten Pythons anzuzeigen -in-Module;

2. Open-Source-Module von Drittanbietern können online über pip install module name installiert werden.

Aufruf des Moduls

import modulefrom module 
import xxfrom module.xx.xx 
import xx as rename
from module.xx.xx import *

Hinweis: Sobald das Modul aufgerufen wird, entspricht dies der Ausführung des Codes in einer anderen py-Datei

Zeitmodul

time.localtime([secs ]): Konvertieren Sie einen Zeitstempel in Wenn die Parameter struct_time und secs der aktuellen Zeitzone nicht angegeben sind, hat die aktuelle Zeit Vorrang.

time.gmtime([secs]): Ähnlich der Methode localtime() , konvertiert die gmtime()-Methode einen Zeitstempel in struct_time für die UTC-Zeitzone (0-Zeitzone).

time.time(): Gibt den Zeitstempel der aktuellen Zeit zurück

time.mktime(): Konvertiert eine struct_time in einen Zeitstempel

time.sleep(secs): Der Thread verzögert die Ausführung für die angegebene Zeit in Sekunden

tiem.asctime([t]): stellt ein Zeittupel oder struct_time in dieser Form dar: So 1. Okt. 12:04:38 2017, wenn ohne Parameter, time.localtime() wird als Parameter übergeben;

time.ctime([secs]): Konvertiert einen Zeitstempel (Sekunden) in die Form von time.asctime(), wenn der Parameter nicht angegeben ist , oder None ist, wird time.time() standardmäßig als Parameter verwendet. Seine Funktion entspricht time.asctime(time.localtime(secs))

time.strftime(format[,t ] ): Konvertieren Sie ein Tupel oder eine Strukturzeit, die die Zeit darstellt (z. B. von time.localtime() und time.gmtime()), in eine formatierte Zeitzeichenfolge. Wenn t nicht angegeben ist, wird time.localtime in ()

übergeben

datetime-Modul

Im Vergleich zum Zeitmodul verfügt das datetime-Modul über eine intuitive Benutzeroberfläche und ist einfacher aufzurufen.

datetime-Modul definiert die folgenden Klassen: datetime.date: Eine Klasse, die das Datum darstellt: Jahr, Monat, Tag. datetime.time: Eine Klasse, die die Zeit darstellt: Stunde, Minute, Sekunde, Mikrosekunde Zeit.

datetime.timedelta: stellt das Zeitintervall dar, also die Länge zwischen zwei Zeitpunkten

datetime.tzinfo Verwandte Informationen zu Zeitzonen

Was wir Ich muss mich erinnern:

1.d=datetime.datetime.now() gibt den aktuellen datetime-Datumstyp

import datetime
d=datetime.datetime。now()
print(d)
print(d.year)
print(d.today())
print(d.timestamp())
print(d.timetuple())

zurück und andere Methoden können

2.datetime.formtimestamp(322222) aufrufen. Um einen Zeitstempel zu konvertieren, handelt es sich um einen Datumstyp vom Typ datetime.

datetime.date.fromtimestamp(time.time())

3 🎜>

Es gibt viele Stellen im Programm, an denen zufällige Zeichen verwendet werden müssen, beispielsweise der Bestätigungscode für die Anmeldung auf der Website. Zufällige Zeichenfolgen können einfach über das Zufallsmodul


random.randrange generiert werden (1,10)# gibt 1-10 zurück. Eine Zufallszahl zwischen 10random.randint(1,10)#Gibt eine Zufallszahl zwischen 1-10 zurück, einschließlich 10random.randrange(0,100,2)#Wählt zufällig eine gerade Zufallszahl zwischen 0 aus und 100. random()#Gibt eine zufällige Gleitkommazahl zurück. random.choice('abc#$@1')#Gibt ein zufälliges Zeichen in einem bestimmten Datensatz zurück. random.sample('abcdefghij',3)#Aus mehreren Zeichenfolgen auswählen Eine bestimmte Anzahl von Zeichen

#Generieren Sie eine zufällige Zeichenfolge

import string''.json(random.sample(string.ascii_lowercase+string.digits,6))

#Shuffle

a=[ 0 ,1,2,3,4,5,6,7,8,9]random.shuffle(a)print(a)

sys module

1.sys.argv

python3 test.py run web

执行结果:
['test.py','run','web']
这个意思就是有的脚本后边可以跟参数,如果跟run我们就执行run,如果跟web 我们就执行web
2.sys.exit(n)退出程序,正常退出
3.sys.version 获取当前解释器的版本
4.sys.maxint 最大的Int值
5.sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
6.sys.platform 返回操作平台的名称
7.sys.getrecursionlimit()获取递归的最大层数
8.sys.setrecursionlimit(1200) 设置最大递归层数
9.sys.getdefaultencoding() 获取解释器默认编码
10.sys.getfilesystemencoding 获取内存数据存到文件里的默认编码

shutil模块

高级的文件,文件夹,压缩包处理模块

shelve模块

json和pickle只能dump,load一次,假如我确实有好几种数据需要序列化,如果只能dump一次的话,这就意味着我自己要dump好几个文件,这个时候就感觉很low,难道没有办法允许我dump好几次吗?
shelve他是对pickle的封装,允许你dump多次,load多次,并且不会顺序乱,因为他是一种key-value的形式;(这个下去自己研究,这里不在多说了,因为它主要是对pickle封装的)shutil.copyfileobj(fsrc,fdst[,llength])将文件内容拷贝到另一个文件中,可以部分内容。

hashlib模块

Hash,一般翻译做“散列”,也有直接音译为”哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。HASH主要用于信息安全领域中加密算法,他把一些不同长度的信息转化成杂乱的128位的编码里,叫做HASH值.也可以说,hash就是找到一种数据内容和数据存放地址之间的映射关系。

MD5

输入任意长度的信息,经过处理,输出为128位的信息(数字指纹);不同的输入得到的不同的结果(唯一性);MD5算法的特点
1.压缩性:任意长度的数据,算出的MD5值的长度都是固定的
2.容易计算:从原数据计算出MD5值很容易
3.抗修改性:对原数据进行任何改动,修改一个字节生成的MD5值区别也会很大
4.强抗碰撞:已知原数据和MD5,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

Das obige ist der detaillierte Inhalt vonVerwandte Einführung in Python-Module. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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