当前位置: 首页 > 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;进行网络设计、配置和故障排…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

学校招生小程序源码介绍

基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码&#xff0c;专为学校招生场景量身打造&#xff0c;功能实用且操作便捷。 从技术架构来看&#xff0c;ThinkPHP提供稳定可靠的后台服务&#xff0c;FastAdmin加速开发流程&#xff0c;UniApp则保障小程序在多端有良好的兼…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕&#xff0c;#AI 监考一度冲上热搜。当AI深度融入高考&#xff0c;#时间同步 不再是辅助功能&#xff0c;而是决定AI监考系统成败的“生命线”。 AI亮相2025高考&#xff0c;40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕&#xff0c;江西、…...

浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...