Python笔记
自己平常学到的零零碎碎的python笔记
一只野生的善逸
吃饭,睡觉,学习的单身狗
展开
-
Python笔记之识别到当前python脚本所在的目录,而不是执行python命令的目录
这样可以确保得到的是脚本文件所在的目录,而不是执行命令的目录。替换为要拼接的目录名即可。这样可以确保路径的拼接是跨平台的。要在Python脚本中识别到脚本所在的目录,可以使用。要在脚本所在的目录后面拼接下一层目录,可以使用。来获取脚本的绝对路径,然后用。原创 2024-10-08 00:28:37 · 322 阅读 · 0 评论 -
Python笔记之异常处理try-except
code review!让我们来看一个简单的Python异常处理的例子,这个例子将涉及一个常见的错误类型:尝试将一个非数字字符串转换为整数。我们将使用 结构来处理这个错误,并提供一个用户友好的错误消息。代码说明函数定义: 函数接受一个提示字符串并尝试获取用户的整数输入。try块:在这里,我们尝试将用户的输入转换为整数。如果输入是一个有效的整数字符串, 函数会成功返回整数值。except块:如果 调用抛出 (例如,如果用户输入了非数字字符),则执行这个块。在这里,我们打印一个错误消息并返回 。预期输原创 2024-05-18 18:20:33 · 64 阅读 · 0 评论 -
Python笔记之使用argparse模块命令行传参
argparse是 Python 标准库中一个用于解析命令行参数的模块。通过使用argparse,你可以轻松地为脚本添加位置参数(positional arguments)、可选参数(optional arguments)、默认值等,并自动生成帮助和使用手册。位置参数(Positional Arguments):这些参数是必须提供的,调用命令时的位置固定。选项(Optional Arguments):通常以或--开头,不是必须的,有默认值或可省略。长选项(Long Options):以--原创 2024-05-18 19:12:52 · 306 阅读 · 0 评论 -
Python笔记之正则表达式模块`re`模块中的`re.search`与`re.match`的区别
re.search:在整个字符串中查找模式,只要字符串中包含匹配项即可。re.match:必须在字符串的起始位置匹配模式,如果起始位置不匹配则返回None。原创 2024-07-21 22:39:51 · 537 阅读 · 0 评论 -
python笔记之matplotlib.pyplot曲线平滑自定义函数:smooth_curv()
代码import matplotlib.pyplot as pltimport numpy as npfrom scipy.interpolate import make_interp_splinedef smooth_curv(label_str,y): x_array=np.arange(1,len(y)+1) y_array=np.array(y) x_smooth = np.linspace(x_array.min(), x_array.max(), 100)原创 2021-10-20 19:45:50 · 1196 阅读 · 0 评论 -
python笔记之单行json数据组成的json文件按行解析:read_json()
做个笔记代码data_time='./xxx/'file_name_1='xxx.json'def read_json(file_name): a_list=[] b_list=[] file_path=data_time+file_name with open(file_path,'r')as fp: for content_line in fp.readlines():#遍历每一行的json数据 content = js原创 2021-10-21 15:34:18 · 624 阅读 · 0 评论 -
Python中map的使用方法
原创 2022-01-24 10:22:48 · 636 阅读 · 0 评论 -
Python笔记之使用pdfkit模块生成PDF(中间借助了html)
pdfkit模块安装$ sudo apt update # 更新一下防后面安装出现问题$ sudo apt install wkhtmltopdf$ pip3 install pdfkit例1:运行代码import pdfkitstr_1="hello world!"str_2="can I help you?"# html格式body = """<html><body><h1>pdfkit_practice</h1>原创 2022-03-18 15:15:34 · 1842 阅读 · 0 评论 -
Python笔记之两个二维列表构成的矩阵对应元素相减并遍历每个差值
代码:import numpy as npA=np.array([[1,2,3],[4,5,6]])B=np.array([[4,6,8],[9,11,12]])print(A,'\n')print(B,'\n')temp=A-Bprint(temp,'\n')for elem in np.nditer(temp): print(elem)运行原创 2022-03-24 00:32:33 · 2570 阅读 · 0 评论 -
python之list[index1:index2]是左闭右开
python之list[index1:index2]是左闭右开代码:运行:原创 2021-12-04 21:13:20 · 1464 阅读 · 0 评论 -
python把10进制数字转16进制并设置字符串宽度右对齐,前面填充0
代码:print(hex(255)[2:].zfill(2))print(hex(7)[2:].zfill(2))print(hex(70)[2:].zfill(2))运行:原创 2021-12-14 16:15:26 · 1560 阅读 · 0 评论 -
为python3.10.0 ilde添加水平滚动条ScrollBar的editor.py
editor.pyimport importlib.abcimport importlib.utilimport osimport platformimport reimport stringimport sysimport tokenizeimport tracebackimport webbrowserfrom tkinter import *from tkinter.font import Fontfrom tkinter.ttk import Scrollbarfrom原创 2021-10-26 15:04:20 · 439 阅读 · 0 评论 -
Python测试程序用时时长(运行时间测试)
参考博文:python记录程序运行时间的三种方法代码:import timeprint('程序开始时间:',time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(int(time.time()))))start = time.time()time.sleep(3)end = time.time()print('程序结束时间:',time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(int(time.time原创 2022-01-21 13:51:20 · 2637 阅读 · 0 评论 -
python知识点查阅
0.python官方文档1.Python - 多变量的for循环 详解2.Python enumerate() 函数3.from xml.dom.minidom import Document4.xml.dom — The Document Object Model API原创 2021-07-30 20:04:08 · 542 阅读 · 0 评论 -
python之16进制字节字符串大小端转换函数
代码:# -*- coding = utf-8 -*-import binasciidef big_small_end_convert(data): return bytes.decode(binascii.hexlify(binascii.unhexlify(data)[::-1]))if __name__ == '__main__': di = '00640100050000C5' do = big_small_end_convert(di) print原创 2021-12-13 12:36:11 · 2992 阅读 · 0 评论 -
python获取当前脚本所在路径并在此基础上创建新的文件路径
current_path = os.path.abspath(".")yaml_path = os.path.join(current_path, “generate.yaml”)原创 2022-03-11 19:16:21 · 992 阅读 · 0 评论 -
flask入门极简历程(python版)
http_service.pyfrom flask import Flaskfrom flask import requestimport jsonapp = Flask(__name__)@app.route('/abc/TEST_transmit', methods=['POST'])def func(): if request.method == 'POST': request_str = json.loads(request.data.decode('UTF原创 2022-01-05 13:26:38 · 655 阅读 · 0 评论 -
Python之UTC(格林威治时间)转北京时间(本地时间)和获取当前时间
代码import timefrom datetime import datetime time_stamp = int(time.time())loc_time = time.localtime(time_stamp)time_1 = time.strftime("%Y-%m-%d %H:%M:%S",loc_time)print('utc时间戳:',time_stamp)print('utc转本地时间:',time_1)运行:...原创 2021-12-23 14:22:01 · 5259 阅读 · 0 评论 -
list中去除连续重复的值并保留头尾2个和头尾2个值在原list中的索引
代码:list1 = [1, 1, 1, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9, 9]list2 = []list3 = []print('len(list)', len(list1))for i in range(len(list1)): if i != len(list1) - 1: if list1[i] not in list2: #如果列表1的元素不在列表2中 lis.原创 2022-03-14 16:22:24 · 735 阅读 · 0 评论 -
Python之UDP通讯简单例子
udp_send_service.pyimport socketudpSocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)bindAddress = ("", 1234)udpSocket.bind(bindAddress)send_data="发送的信息"udpSocket.sendto(str(send_data).encode(), ('127.0.0.1', 5678))udpSocket.close()udp_rec原创 2022-01-06 15:02:23 · 1313 阅读 · 0 评论 -
ubuntu查看python安装路径
which pythonwhereis python原创 2021-12-27 00:27:53 · 1206 阅读 · 0 评论 -
python 小甲鱼——面向对象笔记
一. 对象=属性+方法二. self是什么?1原创 2021-11-27 23:29:44 · 562 阅读 · 0 评论 -
Python中const类的实现
ConstClass.py# -*- coding: utf-8 -*-# python 3.x# Filename:const.py# 定义一个常量类实现常量的功能## 该类定义了一个方法__setattr()__,和一个异常ConstError, ConstError类继承# 自类TypeError. 通过调用类自带的字典__dict__, 判断定义的常量是否包含在字典# 中。如果字典中包含此变量,将抛出异常,否则,给新创建的常量赋值。# 最后两行代码的作用是把const类注册到sys原创 2022-01-17 09:56:36 · 552 阅读 · 0 评论 -
python笔记之两个UTC时间戳相减求时长并转换成local时长
代码import timefrom dateutil.parser import parsetime_stamp_before=1643257292.249754time_stamp_after=1643257309.7499306def get_interview(time_stamp_before,time_stamp_after): loc_time_t1 = time.localtime(time_stamp_before) loc_time_t2 = time.lo.原创 2022-03-15 16:17:29 · 1063 阅读 · 0 评论 -
python之获取标准时区的时间元组
代码:time_tuple = (time.gmtime()) # 获取标准时区的时间元组str_tm_year = (str(time_tuple[0]))[2:4]str_tm_mon = str(time_tuple[1]).zfill(2)str_tm_mday = str(time_tuple[2]).zfill(2)str_tm_hour = str(time_tuple[3] + 8).zfill(2)str_minute = str(time_tuple[4]).zfill(2原创 2021-12-30 10:07:43 · 457 阅读 · 0 评论 -
Python在一个文件夹下遍历得到所有的子文件路径和子文件后缀名
代码import osdef file_search(): for root,dirs,files in os.walk('要搜寻的父文件夹'): for file in files: #获取文件路径 all_file_path=os.path.join(root,file) file_name_and_format=os.path.splitext(all_file_path) .原创 2022-03-23 12:05:38 · 1139 阅读 · 0 评论 -
python——若一个list中的元素都是dict,要获取该list中的某个dict中的某个value所在的dict在list中的索引
代码 for list_content in A_list: if "a_value" in A_list.values(): print('topic_list.index(a_value)', A_list.index(list_content))原创 2022-03-08 18:29:43 · 1572 阅读 · 0 评论 -
Python跨目录引用模块(文件)
绝对好用,铁定成功!import syssys.path.append('相对当前文件的模块(文件)路径')import 模块(文件)名原创 2021-11-19 19:42:55 · 1516 阅读 · 0 评论 -
Python笔记之读取yaml文件
代码:import yamlimport osdef read_config(): # 获取当前脚本所在文件夹路径 curPath = os.path.dirname(os.path.realpath(__file__)) # 获取yaml文件路径 yamlPath = os.path.join(curPath, "abc.yaml") with open(yamlPath, 'r', encoding='utf-8') as f: co..原创 2022-03-17 14:03:54 · 1080 阅读 · 1 评论 -
Linux socket can例程python版本
官方文档:SocketCAN参考博文:python-can J1939 filter maskcan_transmit.pyimport timeimport canbustype = 'socketcan'channel = 'can1'bus = can.interface.Bus(channel=channel, bustype=bustype)msg = can.Message(arbitration_id=0x123, data=[1, 2原创 2021-12-22 11:19:37 · 1058 阅读 · 0 评论 -
Python之list每个元素小数点精度控制
代码:运行:原创 2022-01-02 14:45:23 · 2685 阅读 · 0 评论 -
Python设计模式
参考博文:1.Python2和Python3中@abstractmethod的用法2.【Python篇】工厂模式原创 2022-01-18 11:31:23 · 559 阅读 · 0 评论 -
Python多线程笔记——简单函数版和类实现版
简单函数版import threadingdef func(): while True: body def main(): A = threading.Thread(target=func) A.daemon = True A.start()类实现版import threadingclass class_name(): def __init__(self): self.A_thread = threading.Thread(target=sel原创 2021-12-22 11:43:26 · 695 阅读 · 0 评论 -
Pycharm知识点
1.Anaconda升级和库的安装、更新2.Linux(ubuntu)下pycharm如何配置anaconda中不同版本的python环境原创 2021-12-26 23:03:33 · 422 阅读 · 0 评论