当前位置: 首页 > news >正文

python程序设计员—练习笔记

目录

基础处理

  • 字符串
  • 列表
  • 字典
  • 运算符
  • 正则表达式re库
  • requests
  • Beautiful Soup
  • jieba库
  • 分词模式
  • 基于TF-IDF算法的关键词提取
  •  基于TextRank算法的关键词提取
  • pandas 打开有多个表的.xlsx文件

基础处理


字符串

  • str_ = str_.lower()
  • lower()函数:将字符中的大写字母转换成小写字母
  • str_ = str_.upper()
  • upper()函数:将字符中的小写字母转换成大写字母
  • str_ = str_.replace("要被替换的字符","替换后的字符")
  • 替换字符串
  • str_ = str_.strip()
  • 删除字符串前后的空格或字符

  • str_ = str_.count()
  • 统计某字符在字符串中的个数
  • str_ = str_.split()
  • 以指定字符分割
  • str_.isalpha()
  • 用于判断字符中是否只包含英文中文字符,如果字符串至少有一个字符且所有字符都是字母,则返回 True,否则返回 False。
  • 判断中文字符,用编码格式匹配。
  • 判断字符中所有都是中文,有一个英文都返回False。
  • num = "python炒粉,为生活添砖java"if "\u4e00" <= num <= "\u9fff":print(True)
    else:print(False)
  • 提取字符中的非中文字符

  • num = "python炒粉,为生活添砖java"jg = ""
    for i in num:if "\u4e00" <= i <= "\u9fff":#是中文就pass掉passelse:#不是中文就添加jg += i
    #返回:"python,java"
    print(jg)

列表

  • list_.remove()
  • .remove():函数可以删除列表中第一个指定的值。
  • list_ = list_[::-1]
  • 用索引反转列表
  • list_.insert(要插入的位置的索引,要插入的内容)
  • 向列表插入值
  • list_ = list_.pop()
  • 默认移除列表最后一个元素。
  • 如果提供索引,则移除指定索引的元素。

字典

  • 向字典插入值
  • 如:dict_[ "键" ] = "插入的值"

  • 提取字典的值
  • dict_.get("要提取值的键")
  • 字典的排序:sorted()函数
  • 如下:
  • my_dict = {'banana': 3, 'apple': 4, 'pear': 1, 'orange': 2}  
    sorted_dict_by_values = dict(sorted(my_dict.items(), key=lambda item: item[1]))  
    print(sorted_dict_by_values)  
    # 输出: {'pear': 1, 'orange': 2, 'banana': 3, 'apple': 4}
  • 倒叙排序:reverse=True

运算符

" // ":两数相除,向下取整,取两数相除后的整数部分。

如:3 // 2 结果为:1

       5 // 2 结果为:2

" % ":取模运算,两数相除后的余数

如:7 % 2 结果为:1

        3 % 2 结果为:1

  • pow(x,y,z)
  • 其中 x 是底数,y 是指数。这个函数返回 x 的 y 次幂
  • 其中 x 是底数,y 是指数,而 z 是模数。这个函数返回 (x**y) % z 的结果,即 x 的 y 次幂对 z 取模的结果。这种用法在计算大数的幂并对某个数取模时非常有用,因为它可以避免中间结果过大而导致的溢出问题。

正则表达式re库


  • re.search()
  • 在字符中找到第一次搜索出的正则表达式模式,若为找到则返回None。
  • re.findall("正则表达式" , 要匹配的字符串)
  • 在字符串中找到正则表达式所匹配的所有子串, 返回列表。
  • re.sub()
  • 正则表达式替换匹配的字符串

requests

发送请求

#传入url链接
url = "XXX"#向网站发送请求
#请求成功时状态为:200
resp = requests.get(url)#转换编码格式
#常用的编码格式:"utf-8","gbk"
resp.encoding = "utf-8"#将返回转换成文本
resp = resp.text

Beautiful Soup


将文本转换成Beautiful Soup的对象

soup = BeautifulSoup( 文本 ,"html.parser")


  • soup.find("标签" , 属性="xxx")
  • 匹配第一个符合条件的值。
  • ##注意匹配class属性时,要将"class"属性写成 "class_" 因为"class"时python的关键词。
  • soup.find_all("标签" , 属性="xxx")
  • 匹配所有符合条件的值。
  • 提取标签的属性
  • soup[ " title " ]

jieba库

分词模式

1.精确模式

  • 精确模式是将文本按照最大概率进行切分,效果较好。
  • 使用方法:jieba.cut(sentence),返回一个可迭代的分词结果。

2.全模式

  • 全模式将文本中所有可能的词语都切分出来,可能存在冗余。
  • 使用方法:jieba.cut(sentence, cut_all=True),返回一个可迭代的分词结果。

3.搜索引擎模式

  • 搜索引擎模式根据词语的位置进行切分,适合搜索引擎分词。
  • 使用方法:jieba.cut_for_search(sentence),返回一个可迭代的分词结果。

  • jieba.luct()
  • 这个函数回返回一个分词后的列表。

基于TF-IDF算法的关键词提取

  • jieba库提供了基于TF-IDF算法的关键词提取方法jieba.analyse.extract_tags(sentence, topK=10),用于从文本中提取关键词。
  • topK:参数指定返回的关键词数量,默认为10。

 基于TextRank算法的关键词提取

  • jieba库还提供了基于TextRank算法的关键词提取方法:
  • jieba.analyse.textrank(sentence, topK=10,withWeight=False, allowPOS=("ns", "n", "vn", "v"))
  • sentence:是要提取关键词的文本
  • topK:参数指定返回的关键词数量,默认为10。
  • withWeight:表示是否返回关键词的权重值(默认为False)
  • allowPOS:表示仅包括指定词性的词(默认为名词、动词等)

pandas 打开有多个表的.xlsx文件

  • df = pd.read_excel('path_to_excel_file.xlsx', sheet_name=None)
  • 设置sheet_name参数为None
  • 打开指定的表:df["表名"]

相关文章:

python程序设计员—练习笔记

目录 基础处理 字符串列表字典运算符正则表达式re库requestsBeautiful Soupjieba库分词模式基于TF-IDF算法的关键词提取 基于TextRank算法的关键词提取pandas 打开有多个表的.xlsx文件 基础处理 字符串 str_ str_.lower()lower()函数&#xff1a;将字符中的大写字母转换成小…...

1.DBeaver连接hive数据库

1.hive开启远程服务&#xff0c;linux中直接输入&#xff1a;hiveserver2 2.解压dbeaver和hive-jdbc-2.1.1.zip 3.双击打开 4.数据库&#xff0c;新建连接 5.搜索hive 6.配置参数 7.编辑驱动设置 8.添加jar包 9.测试连接 10.右击&#xff0c;新建sql编辑器 11.执行sql 12.调整字…...

CODESYS随机动态图案验证码制作详细案例(三)

#使用CODESYS软件模仿网页端动态图案验证码的制作详细案例# 前言: 通过上篇图案验证码的实际测试,我们已经完成了该案例的制作,但是在项目应用中,我们想对该功能直接调用,就需要将具有一定功能的程序代码或可视化进行封装成库文件。我们熟知,CODESYS有丰富的库文件,有…...

NodeJS 使用百度翻译API

在大数据处理中&#xff0c;经常需要大批量地翻译短小的文字&#xff0c;使用在线翻译平台的API 调用能够大幅度提高效率。 最近尝试了一下。 第一步在百度翻译开放平台注册 百度翻译开放平台 (baidu.com) 申请APPID 和SECRET加密码 源代码&#xff08;mjs&#xff09; …...

摩熵数科数据产品阵容BCPM

摩熵数科基本介绍 摩熵数科&#xff08;成都&#xff09;医药科技有限公司BCPMdata Pharma Technology &#xff08;Chengdu&#xff09;Co.,Ltd以“探索生命科学数据本源&#xff0c;构建全产业链数据应用生态”为愿景&#xff0c;致力于成为生命科学领域全球领先的数据系统与…...

ros2 .idl文件生成C、C++代码

一、包目录结构 rosidl_generator_c 依赖rosidl_cmake、rosidl_typesupport_interface、ament_index_python、rosidl_parser rosidl_generator_cpp 依赖 rosidl_parser、rosidl_runtime_cpp、rosidl_generator_c rosidl_parser &#xff1a;The parser for .idl ROS interfa…...

scrapy的xpath在控制台可以匹配,但是到了代码无法匹配(无法匹配tbody标签)

问题 使用xpath-helper可以匹配到,然后scrapy却无法 然后写入html来看看 发现根本就没有tbody,太可恶了 解决 方法1 不使用tbody就可以 方法2 使用或运算符 | big_list response.xpath("//div[classChannelClasssNavContent]/table/tbody/tr[1]/td/table/tbody/t…...

OpenCL内存模型

OpenCL将内存划分成主机内存和设备内存。主机内存可在主机上使用&#xff0c;其并不在OpenCL的定义范围内。使用对应的OpenCL API可以进行主机和设备的数据传输&#xff0c;或者通过共享虚拟内存接口进行内存共享。而设备内存&#xff0c;指定是能在执行内核中使用的内存空间。…...

Commvault Cloud如何改变网络弹性游戏规则?

近段时间有点被Commvault与AWS“刷屏”了&#xff1a;9月&#xff0c;Commvault宣布将收购AWS关键云数据保护领域技术领导者Clumio公司&#xff1b;10月&#xff0c;Commvault宣布将在AWS上推出Commvault Cloud网络弹性平台。 种种偶然背后往往隐藏着必然。作为混合云网络弹性和…...

echarts环形饼图自定义边框、标题及图例

目录 1、官网找示例 2、初步改造有个雏形 3、细节改造和优化 4、全部代码 5、原始效果和最终效果对比 看下效果图,和普通的饼图很明显的区别就是: 1有明显的白色边框线 2圆环中心自定义内容标题 3需要设置图例位置与内容 我通常的实现思路就是官网找例子再一步一步改…...

Android SELinux——上下文Context源码(十)

通过前面的文章我们知道,SELinux 中的上下文(contexts)包含很多类型,这里我们就来看看Androd 源码中 上下文 SELinux Contexts 的代码结构。 一、Contexts源码 源码位置:/system/sepolicy/private 1、file_contexts file_contexts 文件用于定义系统中各个文件和…...

责任链模式下,解决开闭原则问题实践

前言 在现代软件工程中&#xff0c;设计模式是解决常见问题的有效工具之一。它们吸收了前人的经验&#xff0c;不仅帮助开发者编写更清晰、更可维护的代码&#xff0c;还能促进团队之间的沟通和协作。责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;作为一…...

对Android的Binder机制的了解

Android的Binder机制详解 Android的Binder机制是Android系统中用于进程间通信&#xff08;IPC&#xff09;的核心机制&#xff0c;它提供了一种高效、安全、稳定的进程间通信方式。以下将对Binder机制的基本概念、工作原理、应用场景、优势以及实现细节进行详细的阐述。 一、…...

收藏文章_VMware17Pro虚拟机安装教程(超详细)

收藏文章&#xff1a; VMware17Pro虚拟机安装教程(超详细) VMware虚拟机安装Linux教程(超详细)...

友思特分享 | 车载同步技术创新:多相机系统如何实现精准数据采集与实时处理?

导读 车载多相机采集系统是智能驾驶技术实际应用中的“眼睛”&#xff0c;友思特车载图像采集和回放系统切实提升了系统的实时同步采集与回放能力&#xff0c;为ADAS等应用的决策系统提供了可靠的核心数据。 视频流同步采集与智驾技术发展 在现代汽车行业中&#xff0c;智能驾…...

grafana failed to load dashboard from file= ... json error=EOF

问题描述 使用 prometheus-community/kube-prometheus-stack helm chart 部署 prometheus 监控后,查看 grafana pod 有如下报错 logger=provisioning.dashboard type=file name=default t=2024-10-17T06:30:47.937121541Z level=error msg...

【前端学习】AntV G6-09 复杂的自定义边、边动画

课程视频 AntV G6&#xff1a;复杂的自定义边、边动画&#xff08;上&#xff09;_哔哩哔哩_bilibili AntV G6&#xff1a;复杂的自定义边、边动画&#xff08;下&#xff09;_哔哩哔哩_bilibili 讲义截图 提及链接 https://codesandbox.io/p/sandbox/register-polyline-get…...

极狐GitLab 发布安全补丁版本 17.4.2, 17.3.5, 17.2.9

本分分享极狐GitLab 补丁版本 17.4.2, 17.3.5, 17.2.9 的详细内容。 极狐GitLab 正式推出面向 GitLab 老旧版本免费用户的专业升级服务&#xff0c;为 GitLab 老旧版本进行专业升级&#xff0c;详情可以查看官网 GitLab 专业升级服务指南 今天&#xff0c;极狐GitLab 专业技术…...

MATLAB智能算法 - Immunity Algorithm免疫算法

Immunity Algorithm免疫算法 智能算法是路线规划、深度学习等等一系列领域所使用的优化算法&#xff0c;是算法进阶之路的必备之路。 前言&#xff1a;本文主要围绕解决TSP旅行商问题展开&#xff0c;对于机器人的路线规划以及非线性方程求解的问题等解决方案 对于一些其他智能…...

学习eNSP对提升就业竞争力有多大帮助?

学习eNSP&#xff08;Enterprise Network Simulation Platform&#xff09;对提升就业竞争力有显著帮助&#xff0c;具体表现在以下几个方面&#xff1a; 1. **增强专业技能**&#xff1a;通过eNSP&#xff0c;你可以模拟华为的网络设备&#xff0c;进行网络设计、配置和故障排…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

为什么要创建 Vue 实例

核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...

热烈祝贺埃文科技正式加入可信数据空间发展联盟

2025年4月29日&#xff0c;在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上&#xff0c;可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞&#xff0c;强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...

高考志愿填报管理系统---开发介绍

高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发&#xff0c;采用现代化的Web技术&#xff0c;为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## &#x1f4cb; 系统概述 ### &#x1f3af; 系统定…...