(Tensorflow之二十一)python常用库文件

6 篇文章 0 订阅

1、import numpy as np

numpy无需多说,应该是运用最多的了。在大阵的矩阵运算中优势十分明显;

2、import tensorflow as tf

Google 开发的第二代人工智能学习系统,搞AI的应该第一行代码就是这个了;

3、import os.path

os.path模块主要用于文件的属性获取。

例:

3.1 os.path.dirname(path) 返回路径

>>> os.path.dirname('home\abiggg\hello.py')
'home\abiggg\' 

3.2 os.path.basename(path)返回文件名

>>> os.path.dirname('home\abiggg\hello.py')
'hello.py' 

3.3 os.path.isfile(‘home\abiggg\hello.py’) 判断该路径下的文 件是否存在

True 

3.4 os.path.join(path1[, path2[, …]]) 将多路径组合

>>>os.path.join(\home, \abig,\hello.py) 
\home\abiggg\hello.py

4、import sys

4.1 sys.path 根据sys.path的路径来搜索module.name

Sys.path.append(“\home\abiggg\hello.py”).

将自已写的文 件加入库文件的搜索路径,从而可以用import hello.py 来调用库

4.2 sys.exit(n)中途退出

但是如果需要中途退出程序, 你可以调用sys.exit 函数, 它带有一个可选的整数参数返回给调用它的程序. 这意味着你可以在主程序中捕获对sys.exit 的调用

4.3 sys.argv[number]将外部参数传入程序中

例:Test.py中的代码如下

import sys
print sys.argv[0]
print sys.argv[1]

调用时

>>>test.py test_2

则打印

test.py
test_2

5、import datetime

处理日期和时间的标准库

5.1 datetime.now()

>>> now = datetime.now()
>>> print now
2017-11-10 00:04:49.656000

5.2 timedelta(days、hours、seconds、microseconds)

>>> print now
2017-11-10 00:04:49.656000
>>> now += timedelta(hours=10)
>>> print now
2017-11-10 10:04:49.656000

6、import random

返回随机生成的一个实数,它在[0,1)范围内;

# 生成第一个随机数
print "random() : ", random.random()

# 生成第二个随机数
print "random() : ", random.random()

打印结果

random() :  0.281954791393
random() :  0.309090465205

7、import tarfile

用于压缩与解压

7.1 解压

import tarfile  
tar = tarfile.open("sample.tar.gz")  
tar.extractall()  
tar.close() 

7.2 压缩

#创建压缩包名
tar = tarfile.open("/tmp/tartest.tar.gz","w:gz")
#创建压缩包
for root,dir,files in os.walk("/tmp/tartest"):
for file in files:
   fullpath = os.path.join(root,file)
   tar.add(fullpath)
tar.close()

8、import logging

主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;

import logging
logging.basicConfig(level = logging.INFO,format = '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)

logger.info("Start print log")
logger.debug("Do something")
logger.warning("Something maybe fail.")
logger.info("Finish")

9、import hashlib

加密模块。

hash = hashlib.md5()#md5对象,md5不能反解,但是加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来
hash.update(bytes('admin',encoding='utf-8'))#要对哪个字符串进行加密,就放这里
print(hash.hexdigest())#拿到加密字符串
# hash2=hashlib.sha384()#不同算法,hashlib很多加密算法
# hash2.update(bytes('admin',encoding='utf-8'))
# print(hash.hexdigest())


hash3 = hashlib.md5(bytes('abd',encoding='utf-8'))
''' 如果没有参数,所以md5遵守一个规则,生成同一个对应关系,如果加了参数,
就是在原先加密的基础上再加密一层,这样的话参数只有自己知道,防止被撞库,
因为别人永远拿不到这个参数
'''
hash3.update(bytes('admin',encoding='utf-8'))
print(hash3.hexdigest())

10、import re

正则匹配。

#!python

>>> p = re.compile('(a(b)c)d')

>>> m = p.match('abcd')

>>> m.group(0)

'abcd'

>>> m.group(1)

'abc'

>>> m.group(2)

'b'

11、import struct

结构体对象,通常的打包和解包

"""
打包和解包
"""
import struct
import binascii

values = (1, b'good', 1.22) #查看格式化对照表可知,字符串必须为字节流类型。
s = struct.Struct('I4sf')
packed_data = s.pack(*values)
unpacked_data = s.unpack(packed_data)

print('Original values:', values)
print('Format string :', s.format)
print('Uses :', s.size, 'bytes')
print('Packed Value :', binascii.hexlify(packed_data))
print('Unpacked Type :', type(unpacked_data), ' Value:', unpacked_data)

结果

Original values: (1, b'good', 1.22)
Format string : b'I4sf'
Uses : 12 bytes
Packed Value : b'01000000676f6f64f6289c3f'
Unpacked Type : <class 'tuple'>  Value: (1, b'good', 1.2200000286102295)
[Finished in 0.1s]
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值