python笔记-自用
2024/1/3# python用+号实现字符串的拼接,非字符串不能拼接
from pymysql import Connection# 连接mysql数据库salary = 100
name = "wang"ans = "%s" % salary + name
print(ans)x = 1
y = 2
sum = "%s %s" % (x, y)
print(sum)# %s字符串占位, %d整数占位 , %f浮点数占位# 格式化的精度控制
# m.n控制精度price = 100.00123
print("%7.3f" % price)print("请输入您的名字:")
# z = input()
# print("你的名字:", z)
# input()函数内部默认输入为str类型
# int() str() 类型转换res = 10 > 5
print(res)b = 100 == 10
print(b)for i in range(10):print(i)
# print(i)# 列表,元组,字符串,集合,字典
# index() 寻找下标索引是否在列表中
# 修改元素直接改 插入用insert(索引,元素)
# 追加元素append()
# extend(数据容器)方法追加一批元素
# 删除元素del list[0] 元素 = list.pop(下标) remove(元素):删除列表中满足相等的第一个元素
# list.clear()清空列表
# list.count(元素) 统计元素个数
# tuple元组的操作:index() count() len()
# str字符串的函数 index(元素) s.replace(s1,s2) s1换成s2
# s.split(" ")按照空格进行拆分
# s.strip("字符串") 删除前后空格 s.strip(字符串)删除前后字符串
# s.count() len(s)# 集合的定义:set() {元素,元素} 集合是去重且无序的 集合是不能通过下标访问
# add(元素)集合添加元素 remove(元素)集合移除元素 集合.pop()随机取出一个元素 clear()
# set3 = set1.difference(set2) 两个集合的差集 set1.difference_update(set2)
# set1.union(set2) 集合合并
# len(set1) 集合元素数目
# 集合可以用for循环遍历,不支持while循环遍历
# 字典,你终于来了,哈哈哈哈
# 字典是通过key取相应的值,不能通过下标索引取 dict[key]
# 新增和更新元素dict[key] = value
# 字典移除元素 value = dict.pop(key) clear()
# 获取全部的key dict.keys()
# for key in dict 遍历取得key
# 字典不支持while循环
# len(dict)元素数目
# 函数可以返回多个值,函数可以按位置传输,按键值传输,指定参数,按不定参数传输:元组、字典
# 函数可以作为形参进行传入,这是计算逻辑的传递不是数据的传递
# lambda匿名函数 匿名函数一般无法二次使用h = lambda x, y : x+ydef get_sum(h):result = h(1,2)return result
print(get_sum(h))# python的文件操作
# 文件的读取操作
# file = open(文件对象路径,文件模式mode,encoding = 编码方式) 得到对文件进行操作的对象
# file.read(num) 读取num字节的结果 file.readLines()读取文件的全部行,封装到列表中
# file.readline() 每次读取一行内容
# file.close()方法关闭文件,解除对文件的占用
# with open() as f: 这种方法可以自动关闭文件流
# 文件的写入操作: f.write(内容) f.flush() 将内存中的数据刷新到硬盘中
# close()方法内置flush()方法
# w模式写入,文件不存在会创建,文件存在会清空
# a模式是追加模式,w是清空写入模式
# \n换行写入
# 异常处理 try: 代码块 except:异常捕获后处理的代码 finally:最后处理
# 异常具有向上层传递性
# 模块就是python文件,里面有类,对象,变量等
# import 模块名 as 别名 from 模块名 import 功能名 as 别名
# 自定义一个模块,使用import导入就可以直接使用了
# 不同模块出现同名,后者会覆盖前者
# 右键运行的时候main==true,不运行该条路径不走
# all变量控制导入的*
# class 类名: name = wang 变量 类中可以定义成员变量,也可以定义成员方法
# def 方法名(self,形参):self是成员方法必须定义的,表示类对象自身的意思,在方法内部访问类的成员变量,必须使用self关键字
# 函数一般写在类外面 方法写在class内部,成员方法
#class Student:name = Noneage = None# new方法实现类的实例化,init方法实现初始化def __new__(cls, *args, **kwargs):passdef __init__(self, name, age):self.name = nameself.age = age# 返回字符串对象的方法def __str__(self):return self.name + str(self.age)# 比较对象的方法def __lt__(self, other):return self.age < other.age# 比较对象的方法def __le__(self, other):return self.age <= other.age# 比较对象的方法def __eq__(self, other):return self.age == other.agestu = Student("wang", 18)
print(stu.name , stu.age )
print(stu)
stu1 = Student("1", 13)
stu2 = Student("2", 13)
print(stu1 < stu2)
print(stu1 <= stu2)
print(stu1 == stu2)# python魔术方法
# 两个下划线开头的变量和方法都是私有的
# class Phone:
# __current_value = 100
# def __fun_1(self):
# print("no")
# def call(self):
# if self.__current_value >= 10:
# print("ok")
# else:
# self.__fun_1()
#
# phone = Phone()
# # 类对象不能使用私有的变量与方法
# # 私有的可以给类中的其它成员访问
# phone.call()
# python 继承是通过(父类)完成的
# class (父类1, 父类2,... )可以实现多继承 python支持直接多继承,java不支持直接多继承
# 多继承,成员同名,优先按照左侧的
# 子类可以调用父类的成员 使用父类名.成员 或者 super().成员# python3支持类型注解,设置类型注解有利于第三方IDE工具对代码进行推断
# 变量:类型 容器:类型
# 方法的类型注解 形参的类型注解 变量:类型 函数返回值的类型注解 函数->类型
# 类型注解是提示型的不是决定性的
# Union[类型1,类型2]联合类型注解 需要先导包才能继续使用
var1 = 2
print(f"你好{var1}")
# 闭包 函数的嵌套 内部函数使用外部函数的变量,外部函数返回内部函数的引用
# 装饰器:不破坏 目标函数代码的前提下为增强目标函数的功能
# 装饰器本质上是创建一个闭包函数,在闭包函数中调用目标函数,可以实现不改变目标函数的情况下增加目标函数的功能
# 进程与线程 使用threading模块实现多线程编程
# target代表目标任务, name是线程名,args与kwargs是按照元组与字典的形式传参
# from time import sleep
# import threading
# def sing(msg, msg1):
# while True:
# print(f"我喜欢唱歌:{msg,msg1}")
# sleep(1)
# def dance(msg):
# while True:
# print(f"我爱跳舞:{msg}")
# sleep(1)
# if __name__ == '__main__':
# sing_thread = threading.Thread(target=sing,args=("北京欢迎你","明天你好"))
# dance_thread = threading.Thread(target=dance,kwargs={"msg":"爵士"})
# sing_thread.start()
# dance_thread.start()# 正则表达式 验证字符串是否符合某个规则 基于re模型进行匹配
# match search findall
import re
s = "python java python"
# match是 匹配从头是否符合
res1 = re.match("python", s)
print(res1)
print(res1.span())
print(res1.group())
# search 找出第一个
res2 = re.search("python", s)
print(res2)
# findall 找到全部匹配的
res3 = re.findall("python", s)
print(res3)# 字符串前面带有r表示转义无效就是普通字符串
# 递归算法: 方法或者函数自己调用自己# is是对象是否相同 == 是值是否相同
# 迭代器是可以记住遍历位置的对象 从集合的第一个元素开始访问,直到访问完所有元素
# iter():创建 next():遍历 也可以使用for循环遍历,python中的迭代器只能向前遍历元素不能后退
# python中使用yield的函数的被成为生成器 生成器返回迭代器对象,生成器是一个特殊的迭代器,
# 调用生成器会在yield位置停下来,在yield位置返回,下一次next()从当前位置继续执行
相关文章:
python笔记-自用
2024/1/3# python用号实现字符串的拼接,非字符串不能拼接 from pymysql import Connection# 连接mysql数据库salary 100 name "wang"ans "%s" % salary name print(ans)x 1 y 2 sum "%s %s" % (x, y) print(sum)# %s字符串占…...
安克创新与火山引擎数智平台开展合作:数据分析降门槛 数据协同破边界
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 近日,消费电子品牌安克创新与火山引擎数智平台(VeDI)达成合作,双方将聚焦安克创新大数据平台的海量数据分析场景&…...
LDD学习笔记 -- Linux内核模块
LDD学习笔记 -- 内核模块 简介LKM类型Static Linux Kernel ModuleDynamic Linux Kernel ModuleLKM编写语法 syntax详细描述内核头文件用户空间头文件Module Initialization FunctionModule Cleanup FunctionKeyword & Tag宏 __init __exitLKM入口注册Module Metadate&#…...
springboot整合springbatch批处理
springboot整合springbatch实现批处理 简介项目搭建步骤 简介 项目搭建 参考博客【场景实战】Spring Boot Spring Batch 实现批处理任务,保姆级教程 步骤 1.建表 建表sql CREATE TABLE student (id int NOT NULL AUTO_INCREMENT,name varchar(100) NOT NULL C…...
答案解析——C语言—第2次作业:转义字符
本次作业的链接如下:C语言—第2次作业:转义字符 1.下面哪个不是C语言内置的数据类型: C char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数 …...
HTML5-新增表单input属性
新增表单属性 form控件主要新增的属性: autocomplete 是否启用表单的自动完成功能,取值:on(默认)、off novalidate 提交表单时不进行校验,默认会进行表单校验 autocomplete属性 概念:autocomplete属性…...
css-、串联选择器和后代选择器的用法
& &表示嵌套的上一级,这是sass的语法,代表上一级选择器 .btn {&.primary {background-color: #007bff;color: #fff;} } 编译出来的结果是同一个元素,有两个类名,两个类名之间没有空格: .btn.primary {…...
nifi详细介绍--一款开箱即用、功能强大可靠,可用于处理和分发数据的大数据组件
目录 目录 一、引言 二、NiFi 的历史背景介绍 三、NiFi 是什么? 核心特性 应用领域 四、NIFI 入门 五 、NiFi 工作流程 六、实际应用场景 七、优势总结 一、引言 NiFi(Apache NiFi),全名为“Niagara Files”࿰…...
K8S Dashboard登录Token过期问题处理
整体思路 用户访问一个页面,在该页面中设置一个超链接,点击跳转至K8S Dashboard;跳转后,使用剪贴板上已复制的Token粘贴到Dashboard页面中的输入框登录即可。 写个定时任务将Token复制到页面上,过期了重新再登…...
x-cmd pkg | trafilatura - 网络爬虫和搜索引擎优化工具
目录 简介首次用户技术特点竞品和相关作品进一步阅读 简介 trafilatura 是一个用于从网页上提取文本的命令行工具和 python 包: 提供网络爬虫、下载、抓取以及提取主要文本、元数据和评论等功能可帮助网站导航和从站点地图和提要中提取链接无需数据库,输出即可转换…...
前端知识点(面试可看) —— JS
摘要 马上就要毕业啦,没有参加2023年的秋招,准备在最近开始找全职或者实习工作,然后也马上过年了,总结和理一下自己的知识要点,参加2024年的春招。 1. JS的执行流程 浏览器的V8引擎收到到执行的JS代码V8结构化这段代…...
CSRF总结
CSRF 文章目录 CSRF漏洞原理漏洞危害漏洞防护CSRF攻击流程CSRF和XSS的区别CSRF漏洞挖掘及利用 CSRF 跨站点请求伪造(CSRF)攻击者会诱导受害者点击事先伪造好的url或者链接,点击后,攻击者就可以盗用你的身份,以你的身份…...
降维算法的简单介绍
降维算法 降维算法: 通过减少数据的维度,如主成分分析和 t-分布邻域嵌入等。 降维通俗的讲,是通过减少数据的维度来处理高维数据的过程。降维算法有助于消除数据中的冗余信息,减少噪声,并提高计算效率。以下是一些常见…...
k8s的声明式资源管理
在k8s当中支持两种声明资源的方式: 1、 yaml格式:主要用于和管理资源对象 2、 json格式:主要用于在API接口之间进行消息传递 声明式管理方法(yaml)文件 1、 适合对资源的修改操作 2、 声明式管理依赖于yaml文件,所有的内容都…...
Git | tag相关命令
语法命令 git tag -h usage: git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]<tagname> [<head>]or: git tag -d <tagname>...or: git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit&g…...
【Java期末】学生成绩管理系统
诚接计算机专业编程任务(C语言、C、Python、Java、HTML、JavaScript、Vue等)10/15R,如有需要请私信我,或者加我的企鹅号:1404293476 本文资源下载地址:https://download.csdn.net/download/weixin_47040861/88697244 —————…...
顶顶通呼叫中心中间件通过队列外呼拨打另一个sip并且放音(mod_cti基于FreeSWITCH)
介绍 顶顶通呼叫中心中间件通过队列外呼拨打另一个sip并且放音 一、添加acl 打开ccadmin->点击配置文件->点击acl.conf->在</list>后面添加一条图中的信息->muqi是我自己设置的名字你们可以修改为自己需要的名字->添加好了点击提交XML->在运维调试点…...
SQL Server从0到1——报错注入
报错注入分为三类:隐式转换,和显示转换,declare函数 隐式转换: 原理:将不同数据类型的数据进行转换或对比 select * from test.dbo.users where (select user)>0 #对比 select * from test.dbo.users where ((sel…...
【python高级用法】线程
前言 Python通过标准库的 threading 模块来管理线程。这个模块提供了很多不错的特性,让线程变得无比简单。实际上,线程模块提供了几种同时运行的机制,实现起来非常简单。 线程模块 线程对象Lock对象RLock对象信号对象条件对象事件对象 简单…...
分布式高级知识点
分布式一致性算法: Paxos Paxos 是一种分布式一致性算法,用于在分布式系统中达成共识。它可以保证,即使在存在节点故障的情况下,系统也能就某个值达成一致。 Paxos 算法的基本思想是,首先选出一个协调者(leader)。协调者负责向其他节点发送提案(proposal)。其他节点收…...
Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
python执行测试用例,allure报乱码且未成功生成报告
allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...
