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

Python中的一些常用操作

文章目录

    • 一. Python操作之-- 使用Python 提取PDF文件中的表格数据!
    • 二:
    • 三: Python中的 @staticmethod@classmethod方法
    • 四: 反斜杠 \
    • 五: 终端的解释器提示符号修改
    • 六: python使用json.dumps输出中文
    • 七: itertools函数的使用,为高效循环而创建迭代器的函数
    • 八: 将列表或者元祖中的数据合并为一个字符串
    • 九: 判断某个参数是不是 另一种参数类型,例如 某时间格式数据 str = '2021-02-02' 是不是时间格式
    • 十: 时间格式的类型转换,包括时间转换字符、字符转换时间等
    • 十一: conda创建环境和删除环境
    • 十三: Python 使用flask进行前端展示,以及进行 分页 展示
    • 十四: Python使用 Flask中的 render_template() 函数
    • 十五:python divmod() 返回的是商和余数的元祖
    • 十六: reshape()的使用,
    • 十七: expand_dim(数组,axis=[]) 对数组进行维度扩展
    • 十八: as_list() 进行列表的转换,例如将一个元组进行列表转换
    • 十九: 解决Linux中Python导入包路径错误
    • 二十一:Python中的string模块的使用

一. Python操作之-- 使用Python 提取PDF文件中的表格数据!

Python提供了许多可用于pdf表格识别的库,如camelot、tabula、pdfplumber等。
综合来看,pdfplumber库的性能较佳,能提取出完整、且相对规范的表格

该库的安装方式 : pip install pdfplumber
库中提供两种PDF表格提取函数:

  1. .extract_tables()

  2. .extract_table()
    这两种函数

  3. .extract_tables()
    可输出页面中的所有表格,并且返回一个嵌套列表,其结构层次为table→row→cell
    with pdfplumber.open(filepath,‘w’) as pdf: pdf 文件读取方式
    page = pdf.pages[45] #这里设置的是想要处理的页面

读取方式是:
page.extract_tables()

  1. .extract_table()
    返回多个独立列表,其结构层次为row→cell。
    若页面中存在多个行数相同的表格,则默认输出顶部表格;
    否则,仅输出行数最多的一个表格。
    注意:此时,表格的每一行都作为一个单独的列表,列表中每个元素即为原表格的各个单元格内容。

在此基础上,从PDF文件中提取表格数据,一种思路就是将提取出来的列表视为一个字符串就,
结合Python的正则表达式re模块进行字符串处理,之后将其保存为以标准英文逗号分割、可被Excel识别的csv格式文件

二:

import pygal 可以

pie_chart = pygal.Pie() #1. 实现扇形图的绘制
#pie_chart = pygal.Line() # 实现多重曲线趋势的绘制
#pie_chart = pygal.Radar() # 可以实现正六边型的趋势绘制
pie_chart.title = ‘’
pie_chart.add(‘name’,比例)

三: Python中的 @staticmethod@classmethod方法

Python 中类中定义的方法可以是:

  1. @classmethod方法 是装饰的类方法
  2. @staticmethod@classmethod方法 是装饰的静态方法
  3. 用的最多的还是不带装饰器的实例方法
    装饰之后的函数在进行调用的时候会有着不同的形式

四: 反斜杠 \

  1. 在行尾的时候用作续航符号
  2. 在字符串中 、使用转义字符,可一件普通的字符转化为有特殊含义的字符。
    如: \n \t

五: 终端的解释器提示符号修改

例如: 将自带的 <<<< 改为 -----
import sys
sys.ps1 = ‘-----’ 进行更改,可以更改为任何东西

六: python使用json.dumps输出中文

在使用json.dumps时注意一个问题
import json
print(json.dumps(‘中国’))
返回的是 “\u4e2d\u56fd”

输出的会是
‘中国’ 中的ascii字符码,而不是真正的中文。

这是因为json.dumps序列化时对中文默认使用的ascii编码
想输出真正的中文需要指定ensure_ascii=False:

中文的时候正确使用方法: 添加上ensure_ascii 参数
import json
print(json.dumps(‘中国’, ensure_ascii=False))

“中国”

七: itertools函数的使用,为高效循环而创建迭代器的函数

下面的网址:包含所有的itertools的模块函数
https://docs.python.org/zh-cn/3.8/library/itertools.html

八: 将列表或者元祖中的数据合并为一个字符串

1. 语法  str.join(squence)
2. 示例>>> str = '-' #指定字符之间的符号>>> seq = ('b','o','o','k')>>> print str.join(seq)>>> b-o-o-k # 输出结果

九: 判断某个参数是不是 另一种参数类型,例如 某时间格式数据 str = ‘2021-02-02’ 是不是时间格式

isinstace(str,datetime.datetime)

十: 时间格式的类型转换,包括时间转换字符、字符转换时间等

import datetime1. 日期时间格式转字符 使用的是 strftime() 函数
date = 2021-12-23
datetime.strptime('2021-12-23','%Y-%m-%d) #这里可以根据需要进行转换 例如:没有中间的'-'符号date.strftime('%Y-%m-%d')
#'2021-12-23'
date.strftime('%Y%m%d')
#'20211223'
date.strftime('%Y-%m')
#'2021-12'2. 字符转换日期时间
法一:
datetime.strptime('2018-09-08','%Y-%m-%d')
#datetime.datetime(2018, 9, 8, 0, 0)法二: 使用的是pandas里面的  to_datetime() 函数
import pandas as pdpd.to_datetime('2018-09-08')
#Timestamp('2018-09-08 00:00:00')
pd.to_datetime('201909',format='%Y%m')
#Timestamp('2019-09-01 00:00:00')3. 数值转换日期
dt = 20180908
datetime.strptime(str(dt),'%Y%m%d')
#datetime.datetime(2018, 9, 8, 0, 0)4. pandas中的时间处理
import random
df = pd.DataFrame({'some_data' : [random.randint(100,999) for i in range(1,10)],'a_col' : '2019-07-12','b_col' : datetime.datetime.now().date(),'c_col' : time.time()},index=range(1,10))

十一: conda创建环境和删除环境

删除虚拟环境:
(推荐教程:Python入门教程)
conda remove -n your_env_name(虚拟环境名称) --all删除虚拟环境中的包:
conda remove --name $your_env_name  $package_name(包名)退出虚拟环境:Linux:source deactivate your_env_name(虚拟环境名称)Windows:deactivate 也可以使用`activate root`切回root环境。

十三: Python 使用flask进行前端展示,以及进行 分页 展示

1. 使用flask进行前端展示2. 使用flask进行 分页 展示from flask_paginate import Pagination,get_page_parameter
# from flask import Flask, render_template,request
from flask_sqlalchemy import SQLAlchemy   
上面的两个是我找到得两个进行分页的参数,目前不知道区别以及期使用用途使用flask_paginate分页技术进行分页
使用参数:
from flask_paginate import Pagination, get_page_parameter
from Config import DBsession, EventRecordDB, draughtFan, wind, and_, StatiscDataPagination: 类函数
get_page_parameter: 获取当前翻页的参数
上面的两个参数是flask-paginate的主要点1. 在视图函数定义方法
pagination = Pagination('参数')
page = request.args.get(get_page_parameter(), type=int, default=1)Pagination.__init__(**kwargs)  注意:标注 --- 的是重点关注参数
found=0: 当使用搜索是使用
page: 当前页, 使用实例对象中的page  -----------------------
per_page: 每页显示多少项, 可以使用数据表的切片slice操作来定义, per_page ----------------
page_parameter: 页面参数, 默认为page, http://localhost:5000/?page=2
prev_label: 上一页, 默认为<<, 可以定义prev_label='上一页'
next_label: 下一页, 默认为>>, 可以定义next_label='下一页'
total: 总共有多少页 -----------------------
bs_version=2: Bootstrap版本, 默认为版本2 -------------------------
注意: 如果使用的是Boostrap3的CDN, 那么就要设置bs_version=3, 否则会无法正常显示
{{ pagination.links }} 这段 代码放在HTML页面中,作用就是,将我们的分页放在先要展示的位置  links 表示的是链接网址以上为主要参数的使用具体使用方法:# 获取当前为第几页
page = request.args.get(get_page_parameter(), type=int, default=1)
# 定义每页显示多少项
start = (page-1)*config.PER_PAGE
end = start + config.PER_PAGE
# 使用切片来显示每页显示多少项
posts = PostModel.query.slice(start, end)
pagination = Pagination(bs_version=3, page=page, total=PostModel.query.count())context = {"posts": posts,"pagination": pagination,# ... others
}
return render_template('index.html', **context)2. 在模板中使用方法
直接在想要放置分页条的地方使用 ↓↓↓↓
{{ pagination.links }}

十四: Python使用 Flask中的 render_template() 函数

render_template() 作用:在Python代码中 直接生成 HTML 缺点很多,比如笨拙,效率低,可读性差。
因此, Flask 提供了 Jinja2 模板引擎来帮助开发者高效灵活生成HTMLhtml模板文件的位置
模板即自己写好的模板html文件,需要放在templates文件夹内。目录结构如下:
1.  
/application.py
/templates/hello.html
2.
/application/__init__.py/templates/hello.html
以上两种存放情况。具体的实施方法: `render_template()`函数是`flask`函数的,他从模板文件夹`templates`中呈现给定的模板上下文。语法以及参数:
import flask
flask.render_template(template_name, **context)render_template()函数需要调用flask包template_name 参数是:  模板的文件名字 类型是字符串类型,不可省略context 参数是: 模板的参数   由模板参数和对应的值组成的字典,可以省略的参数返回值: str    render_template() 函数返回替换模板参数后的模板文本。有两种使用情况:1.  模板中没有参数,就是说不需要给模板中给定参数。例如:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Hello world</title></head><body><h1> Hello World! </h1></body></html>import flaskapp = flask.Flask(__name__)@app.route("/hello")def hello():return flask.render_template("hello_world.html")if __name__ == '__main__':app.run()运行后在浏览器中输入http://地址/hello,结果如下:2.  给模板中传递参数。例如: 模板../templates/for.html如下:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Jinja2 Circulation Control</title></head><body><h1> {{product}} list: </h1><ul>{% for product in products %}<li>{{product}}</li>{% endfor %}</ul></body></html>import flaskapp = flask.Flask(__name__)@app.route("/")def index():products = ["iphoneX", "MacBook Pro", "Huawei"]kwargs = {"products": products}return flask.render_template("for.html", **kwargs)if __name__ == '__main__':app.run()

十五:python divmod() 返回的是商和余数的元祖

	使用功能方法:divmod(x, y)函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。# 我们这里要计算的是总页数 如果有余数的话还要+1才是总页数。

十六: reshape()的使用,

例如: reshape(2,6) 就是将一个数转换成 2行 6列reshape(8,-1) 就是将一个数组转换成  8行 的数据,至于是几列会自动进行计算。同理的(-1,5) 就是固定列的数量,行数进行自动计算。

十七: expand_dim(数组,axis=[]) 对数组进行维度扩展

一般的 axis=[-1] 的意思就是在最后面进行维度扩展  [1,2,3]  -->>  [1,2,3,1]
axis = 多少 就是说在那个位置进行扩展 0,1,2,3   再多的话,就会提示错误,不管多少的
维度,他们的数据总量是不变的。

关键理解:就是说 expand_dim(input,axis=[]) input的shape是固定的,扩展的结果就是在相应的维度上进行扩展,
只要保证数据的参数量不变,不过一般好像都是 1。

详细介绍的网址:
https://blog.csdn.net/hong615771420/article/details/83448878#:~:text=np.%20expand_dims%20%E7%9A%84%E4%BD%9C%E7%94%A8%E6%98%AF%E9%80%9A%E8%BF%87%E5%9C%A8%E6%8C%87%E5%AE%9A%E4%BD%8D%E7%BD%AE%E6%8F%92%E5%85%A5%E6%96%B0%E7%9A%84%E8%BD%B4%E6%9D%A5%E6%89%A9%E5%B1%95%E6%95%B0%E7%BB%84%E5%BD%A2%E7%8A%B6%EF%BC%8C%20%E5%87%BD%E6%95%B0%E6%A0%BC%E5%BC%8F%E5%A6%82%E4%B8%8B%EF%BC%9A%20np.%20expand_dims%20%28array%2C%20axis%29,np.%20expand_dims%2C%20np%20.newaxis%29%E5%92%8C%E5%88%A0%E9%99%A4%E7%BB%B4%E5%BA%A6%20%28%20np%20.squeeze%29%E7%9A%84%E6%96%B9%E6%B3%95.%20cxx654%E7%9A%84%E5%8D%9A%E5%AE%A2.

十八: as_list() 进行列表的转换,例如将一个元组进行列表转换

a = (1,3)
a.as_list()
一般用于在TensorFlow中的获取某个 tensor(张量) 的形状后 get_shape().as_list() 
这样使用,如此可获取  某一维度的形状。

十九: 解决Linux中Python导入包路径错误

原因:IDE环境下,例如:pycharm 下,会自动搜索代码所在的目录,寻找相关的包,而Linux环境下,
直接运行 .py 文件,只会搜索默认的路径,此时需要把代码所在的目录添加到 sys.path 当中。
解决步骤:1. 终端进入Python,键入: import sys 并且查看 print(sys.path)2. cd  进入上述打印出的路径的 site-packages 目录下3. 增加 .pth 文件 vim code_path.pth   (若是没有这个文件,此命令会自动生成该文件)4. 在该文件下添加你的代码目录(代码目录就是我们的项目文件所在目录),按 Esc 键入: :wq 进行保存。

二十一:Python中的string模块的使用

String模块中的常量:
string.digits:数字0~9
string.ascii_letters:所有字母(大小写)
string.lowercase:所有小写字母
string.printable:可打印字符的字符串
string.punctuation:所有标点
string.uppercase:所有大写字母

相关文章:

Python中的一些常用操作

文章目录 一. Python操作之-- 使用Python 提取PDF文件中的表格数据&#xff01;二&#xff1a;三&#xff1a; Python中的 staticmethodclassmethod方法四&#xff1a; 反斜杠 \五&#xff1a; 终端的解释器提示符号修改六&#xff1a; python使用json.dumps输出中文七&#xf…...

go语言调用python脚本

文章目录 代码gopython 在 go语言中调用 python 程序&#xff0c;你可能会用到 代码 亲测 go 测试 go 文件 func TestR(t *testing.T) {// 设置要执行的Python脚本和参数scriptPath : "../nansen.py"arg1 : "nansen"// 执行Python脚本cmd : exec.Comm…...

2.3 【MySQL】命令行和配置文件中启动选项的区别

在命令行上指定的绝大部分启动选项都可以放到配置文件中&#xff0c;但是有一些选项是专门为命令行设计的&#xff0c;比方说defaults-extra-file 、 defaults-file 这样的选项本身就是为了指定配置文件路径的&#xff0c;再放在配置文件中使用就没啥意义了。 如果同一个启动选…...

外部库/lib/maven依赖项 三者关系

外部库(存放项目初始配置的jar包)(它的文件夹里并没有包含lib文件夹的引的外部的依赖的jar包) lib(存放外部导入到项目的依赖的jar包) maven依赖项(管理项目所有的jar包依赖) 三者存放jar包的关系 项目所依赖的全部的jar包 maven依赖项的jar包 外部库中的jar包 lib中的…...

在线制作作息时间表

时光荏苒&#xff0c;岁月如梭&#xff0c;人们描述时光易逝的句子&#xff0c;多如星河。 一寸光阴一寸金&#xff0c;寸金难买寸光阴。 人生就是一段时间而已&#xff0c;所以我明白了一个道理 人生之中最大的浪费就是时间的浪费 因此我想我们教给我们孩子重要的一课应该也是…...

他们朝我扔泥巴(scratch)

前言 纯~~~属~~~虚~~~构~~~&#xff08;同学看完短视频要我做&#xff0c;蟹蟹你&#xff09; 用scratch做的&#xff0c;幼稚得嘞(&#xffe3;_&#xffe3;|||)呵呵&#xff08;强颜欢笑&#xff09; 完成视频 视频试了好久&#xff0c;就是传不上来&#xff0c;私信我加我…...

docker部署前端项目保姆级教程

本地启动docker&#xff08;有不会启动的吗&#xff1f;下载docker&#xff08;小海豚&#xff09;双击起来就行&#xff09; 准备阿里云账号&#xff08;免费&#xff09; 没有就去注册一个&#xff0c;记住密码后面要用到 官网地址&#xff1a;阿里云登录 - 欢迎登录阿里云…...

《C和指针》笔记13: static关键字总结

这里对static关键字做一下总结&#xff0c;可以回顾一下前面两篇博客的文章。 《C和指针》笔记11: external和internal链接属性 《C和指针》笔记12: 存储类型&#xff08;自动变量、静态变量和寄存器变量&#xff09; 当它用于函数定义时&#xff0c;或用于代码块之外的变量声…...

Docker harbor私有仓库部署与管理

一、搭建本地私有仓库二、Harbor私有仓库部署与管理1、Harbor概述2、Harbor的特性3、Harbor的核心组件3.1 Proxy3.2 Registry3.3 Core services3.3.1 UI&#xff08;harbor-ui&#xff09;3.3.2 WebHook3.3.3 Token 服务 3.4 Database&#xff08;harbor-db&#xff09;3.5 Log…...

解锁Selenium的力量:不仅仅是Web测试

Selenium简介 Selenium&#xff0c;作为Web应用测试的领军者&#xff0c;已经成为了无数开发者和测试人员的首选工具。它不仅仅是一个自动化测试工具&#xff0c;更是一个强大的Web应用交互框架。 Selenium的起源与发展 Selenium的历史可以追溯到2004年&#xff0c;由Jason Hu…...

[SQLITE_ERROR] SQL error or missing database (near “=“: syntax error)【已解决】

这个报的错误是语法错误&#xff0c;但是我并没有看出来这行代码有什么错。 通过排除掉下边两个问题解决的 从增加记录方法复制的下来的代码&#xff0c;只删除了关闭自动提交事务&#xff0c;但是connection.commit忘记删除executeQuery和executeUpdate方法的用法忘记了&…...

【视觉系统】笔芯内径机器视觉测量软硬件方案-康耐德智能

检测内容 笔芯内径机器视觉测量系统 检测要求 精度0.03mm&#xff0c;速度120~180个/分钟 视觉可行性分析 对样品进行了光学实验&#xff0c;并进行图像处理&#xff0c;原则上可以使用机器视觉系统进行测试测量。 结果&#xff1a; 对所有样品进行分析&#xff0c;可以在不…...

将文件夹的名称写到Excel中

查看文件夹名称 os.listdir()函数会返回指定路径下的所有文件和文件夹的名称列表&#xff0c;包括隐藏文件和文件夹 import osfolder_path . # 文件夹路径 # . is当前路径 files os.listdir(folder_path) # 获取文件夹内所有文件的名称列表for filename in files:print(fi…...

关于Vue CLI项目 运行发生了 less-lorder错误的解决方案

Module node found :Error: Can’t resolve ‘less-loader’ 报错 文章目录 Module node found :Error: Cant resolve less-loader 报错解决方案&#xff1a;安装 webpack 和 less安装 less-loader 问题&#xff1a; 在运行vue项目的时候发生&#xff1a; Module not found: Er…...

【Qt学习】02:信号和槽机制

信号和槽机制 OVERVIEW 信号和槽机制一、系统自带信号与槽二、自定义信号与槽1.基本使用student.cppteacher.cppwidget.cppmain.cpp 2.信号与槽重载student.cppteacher.cppwidget.cppmain.cpp 3.信号连接信号4.Lambda表达式5.信号与槽总结 信号槽机制是 Qt 框架引以为豪的机制之…...

软件工程(十三) 设计模式之结构型设计模式(一)

前面我们记录了创建型设计模式,知道了通过各种模式去创建和管理我们的对象。但是除了对象的创建,我们还有一些结构型的模式。 1、适配器模式(Adapter) 简要说明 将一个类的接口转换为用户希望得到的另一个接口。它使原本不相同的接口得以协同工作。 速记关键字 转换接…...

Node与Express后端架构:高性能的Web应用服务

在现代Web应用开发中&#xff0c;后端架构的性能和可扩展性至关重要。Node.js作为一个基于事件驱动、非阻塞I/O的平台&#xff0c;以及Express作为一个流行的Node.js框架&#xff0c;共同构建了高性能的Web应用服务。 在本文中&#xff0c;我们将深入探讨Node与Express后端架构…...

C++炸弹小游戏

游戏效果 小人可以随便在一些元素&#xff08;如石头&#xff0c;岩浆&#xff0c;水&#xff0c;宝石等&#xff09;上跳跃&#xff0c;“地面”一直在上升&#xff0c;小人上升到顶部或者没有血的时候游戏结束&#xff08;初始20点血&#xff09;&#xff0c;小人可以随意放炸…...

发送通知消息

目录 1 himall3.0商城源码 1.1 SendMessageOnOrderShipping 1.1.1 //发送通知消息 1.2 /// 所有订单是否都支付 1.2.1 //有待付款的订单&#xff0c;则未支付完成 himall3.0商城源码 public static List<InvoiceTitleInfo> GetInvoiceTitles(long userid) { re…...

Python报错:PermissionError: [Errno 13] Permission denied解决方案

Python报错&#xff1a;PermissionError: [Errno 13] Permission denied 翻译为&#xff1a;权限错误&#xff1a;[errno 13]权限被拒绝 错误产生的原因是文件无法打开&#xff0c;可能产生的原因是文件找不到&#xff0c;或者被占用&#xff0c;或者无权限访问&#xff0c;或者…...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇&#xff0c;在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下&#xff1a; 【Note】&#xff1a;如果你已经完成安装等操作&#xff0c;可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作&#xff0c;重…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...