- 博客(21)
- 收藏
- 关注
原创 Coding养成--Python(20)
解析参数,只需定义好参数类型,就可以获得有效的参数输入,能大大简化获取命令行参数的工作。一般位置参数放在最后,关键字参数要有开头索引。详情参考廖老师的例子,如下。是位置参数,而其他则是类似。这样的“关键字”参数。更神奇的是,如果输入。
2025-03-26 22:31:21
234
原创 Coding养成--Python(19)
实现参数的优先级查找,即先查命令行参数,如果没有传入,再查环境变量,如果没有,就使用默认参数。本身也是一个dict,但是查找的时候,会按照顺序在内部的dict依次查找。如果希望key不存在时,返回一个默认值,就可以用。,这样就可以非常高效地往头部添加或删除元素。可以根据参数设置的顺序确定查找目标参数的顺序。元素的个数,并可以用属性而不是索引来引用。时,如果引用的Key不存在,就会抛出。是一个函数,它用来创建一个自定义的。串起来并组成一个逻辑上的。
2025-03-14 18:37:21
356
原创 Coding养成--Python(18)
从str转换为datetime可以用.strptime('2025.02.21','%Y-%m-%d %H:%M:%S')(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。,最佳方法是将其转换为timestamp再存储,因为timestamp的值与时区完全无关。Key:通过datetime获取时间、转换为timestamp、与str的互转、时区转换。表示的时间需要时区信息才能确定一个特定的时间,否则只能视为本地时间。
2025-02-21 11:17:22
342
原创 Coding养成--Python(17)
a-zA-Z\_][0-9a-zA-Z\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量;1.\d\s\w分别为数字、空格、字母\数字,‘.’代表可以匹配任意字符,{}可以声明字符长度,\s代表空格,后面加一个+表示至少一个。[0-9a-zA-Z\_]+可以匹配至少由一个数字、字母或者下划线组成的字符串,如'a100','0_Z','Py3000'等等;py也可以匹配'python',但是加上^py$就变成了整行匹配,就只能匹配'py'了。
2025-02-11 18:09:50
391
原创 Coding养成--Python(16)
Key:通过manager发布服务器进程,将运行进程分布到子服务器上。才能通过网络将任务正确地发送到其他机器上的进程。才能通过网络将任务正确地发送到其他机器上的进程。服务器启动queue,注册到网络然后写入任务。实例,绑定到端口 5000 并设置验证码。对象注册到网络上,并分别给它们命名为。authkey作为保证传输通信的工具。模块提供了一种机制,能将本地的。获得的接口来添加任务,这样。获得的接口来添加任务,这样。对象包装并注册到网络上。获取到可以在网络上访问的。Focus:分布式进程。
2025-02-11 10:39:52
176
原创 Coding养成--Python(15)
Addition:注意多个锁由于可以存在多个锁,不同的线程持有不同的锁,并试图获取对方持有的锁时,可能会造成死锁,导致多个线程全部挂起,既不能执行,也无法结束,只能靠操作系统强制终止。Key:Thread中多线程中利用Lock防止全局变量被交替修改、TreadLocal创建可全局读取对应变量字典。当多线程修改全局变量时,为了防止交替修改导致错误,一般使用Lock,每个子线程使用完,再用release释放锁。Thread模块可以创造多个线程,主线程叫Mianthread,子线程可修改命名。
2025-01-21 10:24:22
233
原创 Coding养成--Python(14)
Key:fork可实现多进程、WIN系统上multiprocessing模块可替代、进程间通信可通过Queue和Pipes实现。fork通过复制一个子进程来实现多线程,子进程返回0,父进程返回子进程的ID分别可通过getppid、getpid得到。针对具体的子进程,如果想要指定输入和输出可以利用communicate功能输入设置,利用popen创建子进程。multiprocessing模块,先设计一个函数准备调用,然后可以通过传入参数,创建一个。Focus:任务/进程/线程。方法启动,这样创建进程比。
2025-01-20 11:12:36
306
原创 Coding养成--Python(13)
pickle是python序列化的方式, dump进行序列化。Key:pickle、json格式序列化,对类的实例序列化。Addition:对于_slot_形式的无法直接序列化。json是标准的格式,也是JS的格式。1.对中文进行JSON序列化时,Focus:pyhton序列化。对类进行序列化时,无法直接处理。写一个函数(传入,传出)利用_dict_序列化。load进行反序列化。
2025-01-17 16:24:56
194
原创 Coding养成--Python(12)
Key:利用listdir(’.’)遍历当前目录下列表、abspath、relpath等方法。Focus:基于内置OS读取操作文件和目录。Addition:输出当前目录下所有文件。OS不支持copy,
2025-01-16 20:02:47
177
原创 Coding养成--Python(11)
Key:创建IO,然后写入用.write(),用getvalue()读取。Focus:文件读写strIO和BytesIO。
2025-01-16 16:48:15
203
原创 Coding养成--Python(10)
Key:self.name创建的是实例的属性,直接在class下面写name=xxx定义的是类的某个属性,通过Student.name可以直接调用。Focus:OOP中的实例和类的属性。
2024-03-08 22:32:17
404
1
原创 Coding养成--Python(9)
Addition:通过has/set/getattr实现对内在属性的判断/设置/获取。type(xxx)==type(yyy)该方法可以判断函数/串/数值。Focus:OOP中关于获取对象信息的方法。
2024-03-08 22:27:20
391
1
原创 Coding养成--Python(8)
Key:子类可以获得父类中所有的方法;如子类有同名方法,则可以直接覆盖父类的方法;子类会继承父类数据类型;若想实现某种功能,只需要保证父类或子类具有某函数,然而另一个非继承独立的类也有该函数的话,效果类似——即动态语言的‘鸭子’特点。Addition:动态语言的鸭子类型特点决定了继承不像静态语言那样是必须的。Focus:OOP中的继承和多态。
2024-03-08 22:13:33
389
1
原创 Coding养成--Python(7)
Key:通过self._name=name使其成为私有变量,避免直接访问;而类似_name_这类变量是特殊变量,外部可以访问。Addition:其实私有变量在内部变成了_student_name,在外部也可以直接访问,但这是有风险的。Focus:OOP中的访问限制方法。字段对外隐藏起来,用。
2024-03-08 21:56:50
337
1
原创 Coding养成--Python(6)
Key:通过Class Stdudent(object) 来创建类;通过_init_(self,xxx,xxx)来绑定类的属性,其中第一个固定为self;可以通过内部设置函数的方式实现从类内部数据封装。Addition:注意后期通过实例添加方法,对于同类其他实例无效。Focus:OOP面向对象编程--Class&instance。
2024-03-08 18:25:01
390
1
原创 项目实战--针对318组散点数据拟合,探索压实度(Evd)与压实计值(CMV)之间的关系
压实度(Evd)是指土体在压实作用下的密实程度,是衡量路基工程质量的重要指标之一。压实计值(CMV)是一种基于电磁波原理的无损检测方法,可以实时反映路基压实情况。压实度(Evd)与压实计值(CMV)之间的关系是影响路基质量控制的关键因素,但目前还没有形成统一的理论和方法。
2024-01-11 22:05:24
1518
1
原创 Coding养成--Python(5)
自建顶层包,但必须有'._init_.py'添加搜索路径:在sys.path中。Focus:模块定义&调用安装。一个.py就是一个模块。
2024-01-07 07:08:24
363
1
原创 Coding养成--Python(4)
将关键字‘**kw’定义为‘base=xx’(几进制),但注意如果不写会导致误认为‘*args’传入左边。Focus:偏函数-通过functools.partial函数简化调用函数。其目的是为了简化函数调用的形式,比如通过将参数固定减化调用时的形式。
2024-01-07 06:32:02
461
1
原创 Coding养成--Python(3)
log层return的是wrapper,wrapper层要return并执行func。Focus:装饰器—— decorator,@func |(上)Key:装饰器为了给目标函数增加新功能同时不在内部修改函数。@xx相当于声明xx函数增加功能,并将功能在下一行def。Addition:‘._name_’可生成当前函数的名称。‘time.time()’可生成当前执行时间。将实现另外功能的内容直接放在print里?.time是内置的?
2024-01-06 01:37:51
441
1
原创 Coding养成--Python(2)
复习了一下filter函数可以进行对输入的T/F进行判断并筛选。Focus:lambda匿名函数。可以直接在return里用。lambda不需要返回值。
2023-12-22 23:06:27
417
原创 Coding养成--Python
循环变量时应再加一层函数使循环变量不直接被引用,同时用i作为每次循环的指针。若要对外层函数赋值,同时保证不被初始化,提前用nonlocal在内层声明。Addition:同层代码和return以及内层def同样缩进。注意外层函数返回的是内层函数还是使用内层中返回的参数。Focus:返回函数、闭包对于内存的保护。闭包尽量避免循环变量作为外层参数。
2023-12-22 03:36:58
440
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人