08.08python03
python虚拟环境的搭建
- 虚拟环境的搭建:conda create --name env_name python=3.7
- 切换虚拟环境:conda activate env_name
- 切换回base环境下:conda deactivate
- 查看所有虚拟环境:conda env list
- 卸载虚拟环境:coda env remove --name env_name
time方法
- 时间戳,从1970年月1日00.00.00开始到现在经过的秒数
from time import time,localtime,sleep print(time())
- 现在当地时间
from time import time,localtime,sleep print(localtime(time()))
@classmethod
修改默认属性,获取自身类(cls)的属性,并且可以更改classmethod
修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等
静态方法和类
@staticmethod
静态装饰器
如果类中需要非该类成员存在,则可以使用静态调用的方法
class A(object): @staticmethod def is_valid(j): print(j) def a(self): print('hello') a1=A() a1.is_valid('100')
应用:输入四个数字判断是否可以构成一个正方形,如果是正方形求面积。
class F(object): @staticmethod def B(a,b,c,d): if a==b and c==d and a==c and b==d: print('这是个正方形,面积为:',a*b) else: print('这不是一个正方形') F.B(2,2,2,2)
装饰器
应用:利用装饰器将两个数求和,建立函数利用求出的和与第三个数做乘积运算
def LU(func): def warp(n1,n2,n3): num = n1 + n2 return func(0,num,n3) return warp #装饰器将前两个数字求和,函数本身第三个参数乘上这个和# @LU def SUM(num1,num2,num3): print(num1,num2,num3) print(num2 * num3) SUM(10,2,3)
列表生成式
a = [x for x in range(100000000000) if x % 2== 0](只能使用简单的if语句,不能使用else)
优点: 计算速度快,因为一次性已经全部加载到内存中了,适合数据量不是太大的情况
一般电脑能容纳的数据数量为10000- 2000-
缺点: 占用内存
生成器
a = (x for x in range(100000000000) if x % 2== 0)
优点: 节约内存空间
缺点: 计算速度慢,因为要生成.
#生成器的应用
import os path = (r'C:\Users\13947\Documents\Tencent Files\All Users\QQ') res = os.listdir(path) print(res) genter = (dir_ for dir_ in res) print(next(genter))