annuaire
1 module datetime (dates et heures de la bibliothèque standard)
conversion datetime et horodatage
datetime ajouter ou soustraire, utilisez cette classe timedelta
fonction namedtuple (en utilisant l'élément de référence attribut tuple)
une defaultdict (valeur de retour peut être réglée lorsque la clé n'existe pas)
OrderedDict (dictionnaire ordonné, itération par ordre d'itération d'addition)
Compteur (compteur, sous-classe dict)
3 base64 (avec 64 caractères pour représenter des données binaires arbitraires)
4 struct (octets et résoudre d'autres types de conversion)
5 hashlib, HMAC (fournir algorithme digest commun, MD5, SHA1, etc. clé mixte .Hmac)
6 itertools (fournit une fonction très utile pour faire fonctionner l'itération de l'objet)
8 urllib, utilisez le programme pour effectuer diverses requêtes http, XML, HTMLParser
9 oreiller, traitement d'image, https://pillow.readthedocs.org/
10 demandes, url, manipulation pratique que urllib, bibliothèques tierces
11 chardet, codant pour la détection
12 psutil, l'état du système de surveillance
13 virtualenv créer un ensemble d'environnement d'exploitation isolé
Intégré dans le module
1 module datetime (dates et heures de la bibliothèque standard)
conversion datetime et horodatage
datetime est le module, le module comprend en outre une classe de datetime datetime
from datetime import datetime
# 获取当前日期和时间
now = datetime.now() # 获取当前的datetime
print(now)
# 获取指定日期和时间
dt = datetime(2015, 4, 19, 12, 20) # 用指定日期和时间创建一个datetime对象
print(dt)
# 将datetime转换为timestamp
dt_ts = dt.timestamp() # 调用datetime的timestamp()方法
print(dt_ts)
# 将timestamp转换为datetime
dt2 = datetime.fromtimestamp(dt_ts) # 调用datetime的fromtimestamp()方法传入timestamp参数,转换到了本机时间
dt3 = datetime.utcfromtimestamp(dt_ts) # 转换到utc时间
str avec conversion datetime
from datetime import datetime
# str转datetime
cday = datetime.strptime('2019-10-1 19:45:59', '%Y-%m-%d %H:%M:%S') # 转换后是没有时区信息的
print(cday)
# datetime转str
cday_str = cday.strftime(%a %b %d %H:%M:%S)
print(cday_str)
Les chaînes de format date et l' heure: https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
datetime ajouter ou soustraire, utilisez cette classe timedelta
from datetime import datetime, timedelta
now = datetime.now()
now_plus_10days = now + timedelta(days=10)
Converti à l'heure UTC
Un temps de datetime a un fuseau horaire propriété tzinfo, la valeur par défaut est Aucun, ne peut donc pas dire quel fuseau horaire à moins forcé de fixer un datetime fuseau horaire
from datetime import datetime, timedalta, timezone
tz_utc_8 = timezone(timedelta(hours=8)) # 创建时区UTC+8
now = datetime.now() # 本地时间,tzinfo默认为None
print(now)
local_time = now.replace(tzinfo=tz_utc_8) # 强制设置时区为UTC+8
print(local_time)
Fuseau horaire Converter
temps UTC peut passer à travers utcnow (), puis zone tzinfo = temps de réglage timezone.utc comme une référence, puis utilisez le fuseau horaire lorsque les paramètres de zone obtenus astimezone entrant
from datetime import datetime, timezone, timedelta
utc_dt = datetime.utcnow().replace(tzinfo=timezone.utc) # 拿到utc时间并设置时区
bj_dt = utc_dt.astimezone(timezone(timedelta(hours=8))) # 传入时区参数获得时区时间
La clé de conversion temps zone qu'un fuseau horaire se datetime, l'obtention de la zone de temps de référence défini par la force, puis utiliser datetime avec le fuseau horaire, pour convertir un procédé de zone de temps arbitraire par astimeone ()
2 collectioins module
python collections est une collection de module intégré qui fournit de nombreuses collections utiles
fonction namedtuple (en utilisant l'élément de référence attribut tuple)
namedtuple fonction pour créer un des objets personnalisés, et précise le nombre d'éléments du tuple et attribut peut être utilisé à la place d'un indice de référence à un élément.
Alors que nous pouvons facilement définir un type de données, il a une invariance tuple, et peut être référencé par attribut , facile à utiliser
from collections import namedtuple
Point = namedtuple('Point', ['x', 'y']) # 创建一个类
p = Point(1, 2) # 创建实例
print('Point type:', type(Point))
print(p)
deque liste à deux voies
Afin de réaliser des insertions efficaces de liste dans les deux sens et les suppressions, en plus de la méthode de la liste ordinaire, il popleft () et appendleft () pour supprimer et ajouter l'élément d'en-tête
une defaultdict (valeur de retour peut être réglée lorsque la clé n'existe pas)
from collections import defaultdict
dd = defaultdict(lambda: 'N/A')
print(dd['a']) # 返回'N/A'而不是报错,其他和dict一样
OrderedDict (dictionnaire ordonné, itération par ordre d'itération d'addition)
Peut mettre en œuvre un dict FIFO, lorsque la capacité est supérieure à la limite, supprimer la première clé
ChainMap
ChainMap peut enchaîner un groupe de dict, dict forme logique, un ChainMap dict lui-même, mais trouvera selon l'ordre dans dict quand on regarde à l'intérieur. Application: via la ligne de commande, les variables d'environnement et des paramètres pour atteindre la priorité de trouver les paramètres par défaut des paramètres transmis ChainMap
Compteur (compteur, sous-classe dict)
Par exemple, compter le nombre de caractères
from collections import Counter
c1 = Counter()
for ch in 'Programming':
c1[ch] += 1
print(c1)
3 base64 (avec 64 caractères pour représenter des données binaires arbitraires)
une base 64 avec un des caractères binaires arbitraires pour représenter un procédé, un groupe de 3 octets, soit un total de 24, puis divisé en 4 groupes de 6, 6 selon cette table de correspondance 64 correspondant au caractère de caractères. [ 'A', 'B', ... 'a', 'b', ... '0', '1', ... '+', '/'], une longueur de progression de 33%.
3 octets non utilisés \ x00 up, réencoder la fin plus 1 ou 2 signe égal indique combien d'octets composent, supprimer automatiquement le décodage
import base64
b = base64.b64encode(b'binary string') # 把二进制字节类型的数据根据64字符表进行编码
eb = base64.b64decode(b) # 将编码后的二进制数据进行解码
b = urlsafe_b64encode(b'binary string') # urlsafe的编码 由于+和/在url中不能直接出现 其实是换成了-和_
eb = urlsafe_b64decode(b) # urlsafe解码
Depuis = B64 peut également se produire dans le codage, mais le signe égal dans l'URL, les cookies qui peut causer l'ambiguïté, donc beaucoup d'encodage base64 enlèvera =
import base64
# 能够处理编码后去掉等号的
def safe_base64_decode(s):
x = len(s) % 4
if not x:
return base64.b64decode(s)
else:
s = s.decode(encoding='utf-8') + '=' * x
s = bytes(s, encoding='utf-8')
return base64.b64decode(s)
4 struct (octets et résoudre d'autres types de conversion)
https://docs.python.org/3/library/struct.html#format-characters
5 hashlib, HMAC (fournir algorithme digest commun, MD5, SHA1, etc. clé mixte .Hmac)
6 itertools (fournit une fonction très utile pour faire fonctionner l'itération de l'objet)
itertools.count (), créer un itérateur infini, imprimer la séquence de nombres naturels
Cycle (), la séquence entrante se poursuit indéfiniment,
REPEAT (), l'élément se poursuit indéfiniment, en passant le second paramètre peut définir le nombre de répétitions
TakeWhile (condition, seq), dans les conditions pris une suite finie
fournir itérateurs
chaîne d'hôtels (), l'objet est une itération de chaîne pour former une plus grande itérateur
GroupBy (), les éléments répétitifs adjacents itérateur du doigt mis en place, les règles de sélection peuvent être fournis par la fonction
7 contextlib (gestion de contexte, l'utilisation de la fonction de gestion de contexte peut être utilisé avec)
8 urllib, utilisez le programme pour effectuer diverses requêtes http, XML, HTMLParser
Les modules tiers
9 oreiller, traitement d'image, https://pillow.readthedocs.org/
10 demandes, url, manipulation pratique que urllib, bibliothèques tierces
11 chardet, codant pour la détection
12 psutil, l'état du système de surveillance
Obtenir des informations CPU, mémoire des informations, des informations sur le disque, les informations réseau, informations de processus
13 virtualenv créer un ensemble d'environnement d'exploitation isolé
- - Créez un répertoire et dans le répertoire
- - Créer un python environnement d'exécution indépendant nommé venv, utilisez la commande: virtualenv --no-site-packages venv
Paramètres-packages --no-site ont été installés pour permettre à tous les environnement de python package système tiers ne seront pas copiés, obtenir un environnement de travail propre
- - dans l'environnement, utilisez la commande: Source venv / bin / activate
Invite a changé noté que l'environnement actuel est un environnement nommé venv le python, pépin INSTALLÉ utilisé dans cet environnement sont montés sur le boîtier inférieur environnement venv, le système n'est pas affecté python.
- - Quitter l'environnement, utilisez la commande: Désactiver