def __init__(self, config):
self.batch_size = config.batch_size
self.num_steps = config.num_steps
class config:
batch_size = 10
num_steps = 50
if __name__ == '__main__':
han = Han(config)
print(han.batch_size)
print(han.num_steps)
输出结果:
/home/ubuntu/workspace/pythondemo/env/bin/python /home/ubuntu/workspace/BioEvent/wuhan/Han.py
10
50
Process finished with exit code 0
刚学习Python,所以一点点学会的东西都想要记载怕秀逗脑袋瓜记不住:
感悟: 1. batch_size和num_steps可以理解成类Han的成员变量
2. class 类型 可以不用实例化直接作为参数使用
3. 模块中可以有多个类
import wuhan.wuhan11class Han: def __init__(self, config): self.batch_size = config.batch_size self.num_steps = config.num_stepsclass config: batch_size = 10 num_steps
这篇文章主要介绍了
Python
模块
future
用法
原理详解,文
中
通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
计算机的知识太多了,很多东西就是一个使用过程
中
详细积累的过程。最近遇到了一个很久关于future的问题,踩了坑,这里就做个笔记,免得后续再犯
类
似错误。
future的作用:把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本
中
测试一些新版本的特性。说的通俗一点,就是你不用更新
python
的版本,直接加这个
模块
,就可以使用
python
新版本的功能。 下面我们用几个例子来说明它的
用法
:
python
2.x print不是一个函数,
我们知道
python
的执行效率不是很高,而且由于GIL的原因,导致
python
不能充分利用多核CPU。一般的解决方式是使用多进程,但是多进程开销比较大,而且进程之间的通信也会比较麻烦。因此在解决效率问题上,我们会把那些比较耗时的
模块
使用C或者C++编写,然后编译成动态链接库,Windows上面是dll,linux上面则是so,编译好之后,交给
python
去调用。而且通过扩展
模块
的方式还可以解决
python
的GIL的问题,因此如果想要利用多核,我们仍然可以通过扩展
模块
的方式。
python
如何调用扩展
模块
python
调用扩展
模块
的一种比较简单的方式就是使用ctypes这个库,这个库是p
Java
中
最通用的日志
模块
莫过于 Log4j 了,在
python
中
,也自带了 logging
模块
,该
模块
的
用法
其实和 Log4j
类
似。日志是记录操作的一种好方式。但是日志,基本都是基于文件的,也就是要写到磁盘上的。这时候,磁盘将会成为一个性能瓶颈。对于普通的服务器硬盘(机械磁盘,非固态硬盘),
Python
日志的性能瓶颈是多少呢?今天我们就来测一下。下面话不多说,来一起看看详细的介绍:
测试代码如下:
#! /usr/bin/env
python
#coding=utf-8
# ============================
# Describe : 给平台提供的
datetime
模块
1.1 概述
datetime比time高级了不少,可以理解为datetime基于time进行了封装,提供了更多的实用的函数,datetime的接口更加的直观,更容易调用
1.2
模块
中
的
类
datetime:同时有时间与日期
timedelta:表示时间间隔,即两个时间点的间隔:主要用于计算时间的跨度
tzinfo: 时区相关的信息
date : 只关注日期
2、获取系统当前时间
先导入
模块
:
import datetime
t1 = datetime.dat
这学期上了很多门机器学习的课程,大部分课程都会提到一些
python
的基本知识,但是好像都没有涉及到
python
中
类
的相关内容,我一直感觉“
类
”就像一个谜一样的东西。正好趁着寒假学一下,顺便把学到的内容以及相关资料码下来。
1.感觉这个大佬讲得还挺清晰的
Python
中
的
类
Class到底怎么写?
这篇推文原参考B站的教学视频链接附上
2. 第二篇参考,这里讲到了关于下划线函数_init_, 和_new_以及_del_的相关内容博客链接
文章目录
类
的概念如何创建一个
类
方法和特殊方法静态数据、静态方法和装饰器继承和多态继承多态
模块
调用和多文件应用程序
类
的概念
python
完全支持过程化编程和面向对象编程。面对对象编程是一种设计思想,意味着我们把对象作为程序的基本单元,而每个对象包含了自己的属性和方法。面向对象编程主要有以下特点:
封装(Encapsulation):对外部世界隐藏对象的工作细节。
继承(Inheritance):继承使子
类
具有父
类
的各种属性和方法,而不需要编写相同的代码。
多态(Polymorphism):为不同的数据
类
型
需要变成连续分布的情况:
contiguous:view只能用在contiguous的variable上。如果在view之前用了transpose, permute等,需要用contiguous()来返回一个contiguous copy。
参考资料:h...
本文实例讲述了
python
开发
中
module
模块
用法
。分享给大家供大家参考,具体如下:
在
python
中
,我们可以把一些功能
模块
化,就有一点
类
似于java
中
,把一些功能相关或者相同的代码放到一起,这样我们需要用的时候,就可以直接调用了
这样做的好处:
1,只要写好了一个功能
模块
,就可以在以后调用,代码的重用就可以体现出来了
2,功能写好了以后,不会发生错误。如果一个相同的功能,我们在一个
模块
中
写了一遍,在另外的
模块
中
又写了一遍……这样我们难免保证我们在写的过程
中
不发生错误。
但是我们如果能够写一个功能
模块
写好了以后,就把他用在很多地方,其一,用起来方便,其二,可以保证其正确性
3,代码共享
python
logging
模块
主要是
python
提供的通用日志系统,使用的方法其实挺简单的,这块就不多介绍。下面主要会讲到在使用
python
logging
模块
的时候,涉及到
多个
python
文件的调用,而每个文件设置了对应的logging方式不同,可能会产生的令人困惑的现象。
下面以自己在开发的时候遇到的问题作为叙述的背景:
有三个
python
模块
A、B、C。主
模块
A会import B和C
模块
,主
模块
有对应的logging方式,
A使用logging的
模块
的方式为:
import logging
import logging.handlers
def CreateLogger(logFil
shutil
模块
是
Python
标准库
中
的一个
模块
,用于文件和文件夹的高级操作。以下是shutil
模块
中
常用的一些函数:
1. shutil.copy(src, dst):将文件从src复制到dst。
2. shutil.copy2(src, dst):与copy()函数
类
似,但是会复制文件的元数据。
3. shutil.copytree(src, dst):将整个文件夹从src复制到dst。
4. shutil.move(src, dst):将文件或文件夹从src移动到dst。
5. shutil.rmtree(path):删除整个文件夹及其内容。
6. shutil.make_archive(base_name, format, root_dir):创建压缩文件。
7. shutil.unpack_archive(filename, extract_dir):解压缩文件。
此外,shutil
模块
还有很多其他的函数,可以通过help(shutil)查看其官方文档获取更多信息。