Python小程序 - 文件处理1(使用AI工具)

    使用 AI进行Python 小程序开发,会是什么样子的:只要你问的准,AI给出的答案?自己试试看,入门越来越低。
    人还要做什么?还能做什么?

    需求:给定目录 -- 需求持续补充中
    1)统计该目录及子目录下文件类型(以后缀区分)、文件数量(文件及文件夹、总量及不同类型数量)、绘制目录结构
    2)给定关键字,判断目录下文件是否包含该关键字:如果包含,输出该文件名、关键字个数、所处位置(行)
    。。。。。。。
    9)程序打包成 EXE 文件供外部使用

  1. 提问1:python 查看目录及子目录文件列表
     
    ## 创作助手import osdef get_all_files(directory):file_list = []for root, dirs, files in os.walk(directory):for file in files:file_list.append(os.path.join(root, file))return file_listdirectory = "your/directory/path"
    files = get_all_files(directory)
    for file in files:print(file)
    
  2. 提问2:python 判断文件后缀名
    filename = "example.txt"  # 文件名# 可能的后缀名列表
    allowed_extensions = [".txt", ".doc", ".pdf", ".jpg", ".png"]# 判断文件后缀名
    for ext in allowed_extensions:if filename.endswith(ext):print("文件后缀名为", ext)break
    else:print("文件后缀名不在允许的范围内")
  3. 提问3:python 判断当前文件后缀名是什么
    import osfilename = 'example.txt'
    extension = os.path.splitext(filename)[1]print(extension)
    
  4. 提问4:python 将不同后缀的文件名放入字典中并统计数据
    import os# 指定文件夹路径
    folder_path = '/path/to/folder'# 获取文件夹中的所有文件名
    files = os.listdir(folder_path)# 创建一个空字典用于存放文件后缀及数量
    file_ext_dict = {}# 遍历每个文件
    for file in files:# 获取文件后缀file_ext = os.path.splitext(file)[1]# 判断文件后缀是否已存在于字典中if file_ext in file_ext_dict:# 如果存在,则数量加1file_ext_dict[file_ext] += 1else:# 如果不存在,则新增键,并设置数量为1file_ext_dict[file_ext] = 1# 打印字典中的数据
    for ext, count in file_ext_dict.items():print(f"{ext}: {count}")>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    .txt: 10
    .docx: 5
    .xlsx: 3
    .jpg: 2
  5. 提问5:python,读取文件并判断文件中是否包含某个字段
    ## check_field_in_file函数,接受一个字段和一个文件名作为参数
    ## 尝试打开文件并逐行遍历文件内容,如果在任何一行中找到了包含给定字段的字符串,则返回True;
    ## 如果文件找不到,则输出相应的错误信息,并返回Falsedef check_field_in_file(field, filename):try:with open(filename, 'r') as file:for line in file:if field in line:return Trueexcept FileNotFoundError:print(f"File '{filename}' not found.")return Falsefield = "example_field"
    filename = "example.txt"if check_field_in_file(field, filename):print(f"File '{filename}' contains the field '{field}'.")
    else:print(f"File '{filename}' does not contain the field '{field}'.")
  6. 提问6:python,读取 doc 文件
    pip install python-docxfrom docx import Document# 打开doc文件
    doc = Document('myfile.doc')# 读取文档中的段落
    for para in doc.paragraphs:print(para.text)# 读取文档中的表格
    for table in doc.tables:for row in table.rows:for cell in row.cells:print(cell.text)
  7. 提问7:python,读取 excel 文件
    pip install pandasimport pandas as pd# 读取 Excel 文件
    data = pd.read_excel('filename.xlsx')# 显示数据
    print(data)
  8. 提问8:python,读取 pdf 文件
    pip install PyPDF2import PyPDF2# 打开PDF文件
    with open('example.pdf', 'rb') as file:# 创建PDF对象pdf = PyPDF2.PdfFileReader(file)# 获取PDF中的页数num_pages = pdf.numPages# 读取每一页的内容for page in range(num_pages):# 获取当前页的对象page_obj = pdf.getPage(page)# 提取当前页的文本内容text = page_obj.extract_text()# 打印文本内容print(text)
    
  9. 提问9:python,读取 txt 文件 -- 这是最常规的读写,放在最后
    with open('myfile.txt', 'r') as file:for line in file:print(line)
  10. 问10:python 使用xlrd xlwt读取office文件 
    pip install xlrd
    pip install xlwtimport xlrd# 打开Excel文件
    workbook = xlrd.open_workbook('file.xlsx')# 选择第一个工作表
    worksheet = workbook.sheet_by_index(0)# 读取单元格数据
    cell_value = worksheet.cell_value(0, 0)
    print(cell_value)# 遍历所有行和列
    for row in range(worksheet.nrows):for col in range(worksheet.ncols):cell_value = worksheet.cell_value(row, col)print(cell_value)-------------------------------------
    import xlwt# 创建一个新的Excel文件
    workbook = xlwt.Workbook()# 添加一个工作表
    worksheet = workbook.add_sheet('Sheet1')# 写入单元格数据
    worksheet.write(0, 0, 'Hello')# 保存Excel文件
    workbook.save('file.xlsx')

后续

    1. 如果把 10 条提问放在一起能否完成一个完整的项目代码呢?
    2. AI生成的代码能够直接应用于最终项目吗?需要修改吗?是提问不到位还是AI不足以替代人的工作?
    3. 最终代码修正,慢慢做好了。。。。。。
        - 准备

#********************************************************************
# Copyright (c) 2024,LeiXun Studio
# All Rights Reserved.
#
# File Name: fileCheck.py
# Summary: check files in folder: count and content
#
# @Version: 0.1
# @Author: Roy
# @Start Date: 2024/5/12
#********************************************************************* 

        - 变量定义

folderPath = ''     # target folder; default: C:\Windows\System32
fileList = []       # file ist in target folderfilecount = 0       # total file count
filetype = {}       # {type:count},file type and type countquerystr = ''       # query string in file
strfile = {}        # {filename:strcount}, file name and string show count 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/836103.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

船舶检测数据集VOC+YOLO格式7000张6类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):7000 标注数量(xml文件个数):7000 标注数量(txt文件个数):7000 标注…

文件夹列表命令

ls > filenames.txt 列出本文件夹内文件 find ~/docs -type f -maxdepth 1 > filenames.txt 如果只需要在目录中立即包含的常规文件的名称,那么可以这样:

【linux-IMX6ULL-定时器-GPT-串口配置流程-思路】

目录 1. 定时器配置流程1.1 EPIT定时器简介1.2 定时器1(epit1)的配置流程1.3 配置代码(寄存器版本)1.4 定时器-配合按键消抖1.4.1 实现原理1.4.2 代码实现(寄存器版) 2. GPT定时器实现高精度延时2.1 延时原理分析2.2 代码实现 3. UART串口配置流程3.1 UA…

微信小程序按钮去除边框线

通常我们去掉按钮边框直接设置 border:0 但是在小程序中无效,设置outline:none也没用,当然可能你会说加权重;试过了无效 实际上该样式是在伪元素::after内,主要你检查css 还看不到有这个关系,鹅厂就是坑多 类样式::…

半小时搞懂STM32面经知识点——IIC

1.IIC 1.1什么是IIC? 同步半双工通信协议,适用于小数据和短距离传输。 1.2 IIC需要几条线? IIC总共有2条通信总线(SDA,SCL),SCL为时钟同步线,用于主机和从机间数据同步操作;SDA为…

【密评】 | 商用密码应用安全性评估从业人员考核题库(9/58)

Hill密码是重要古典密码之一,其加密的核心思想的是()。 A.线性变换 B.非线性变换 C.循环移位 D.移位 著名的Kerckhoff原则是指()。 A.系统的保密性不但依赖于对加密体制或算法的保密,而且依赖于密钥 B.系统…

【计算机网络】数据链路层的功能

数据链路层的基本功能: 封装成帧透明传输差错检测 数据链路层使用的信道主要有两种 点对点信道——PPP协议广播信道——CSMA/CD协议(有线局域网)、CSMA/CA协议(无线局域网) 数据链路层所处的地位 从图中可以看出,数据从主机H1送到主机H2需要在路径中…

论文笔记模版

1. 摘要 1.1 背景 1.2 挑战 1.3 提出新方法 1.4 贡献 2. 引言 2.1 背景(引出问题) ①介绍大背景: ② 应用场景: ③ 介绍主题: 2.2 引出挑战 一般用图表来展现出我们的挑战(直观,解决什…

echarts环形图 legend文字过长显示...鼠标移动上展示全称

legend: {type: scroll,orient: vertical,x: left,y: bottom,top: "42%",left: 13%,data: this.dutyNames,textStyle: { color: #fff },triggerEvent: true,tooltip: {show: true,trigger: item,//鼠标移动上去展示全称},formatter: function (params) {var val &qu…

HTML五彩缤纷的爱心

写在前面 小编准备了一个五彩缤纷的爱心,送给各位小美女们~ 在桌面创建一个.txt文本文件,把代码复制进去,将后缀.txt改为.html,然后就可以双击运行啦! HTML简介 HTML(超文本标记语言)是一种…

【Python单点知识】通过实例介绍抽象类

文章目录 0. 前言1. 抽象类的概念与特性1.1 定义1.2 特性 2. 抽象类的实现与使用2.1 抽象类的创建2.2 抽象类的特性验证2.3 注册机制与非直接继承 3. 应用场景与设计价值4. 总结 0. 前言 按照国际惯例,首先声明:本文只是我自己学习的理解,虽然…

C++——二叉树搜索树

前面写了初阶数据结构——二叉树;本文内容是来对它来进行结尾 目录 一概念 二实现 2.1查找 2.2插入 2.3删除 完整源代码 三二叉树的应用 四二叉搜索树的性能分析 五二叉搜索树相关的面试题 一概念 二叉搜索树又称二叉排序树,它或者是一棵空树…

妙笔生花,创作无限——WonderPen妙笔 for Mac

写作,是灵感的流淌,是心灵的独白。WonderPen妙笔 for Mac,为您的灵感插上翅膀,让您的创作更加流畅自如。它拥有简洁直观的界面设计,让您的思绪在纯净的写作环境中自由飞翔。多种写作模式,满足您不同的创作需…

Ps 滤镜:绘图笔

Ps菜单:滤镜/滤镜库/素描/绘图笔 Filter Gallery/Sketch/Graphic Pen 绘图笔 Graphic Pen滤镜可以模拟传统绘画技术,特别是模拟使用细油墨笔进行绘制的艺术效果。该滤镜主要用于将图像中的细节以细线的形式表现出来,非常适合于增强图像的线条…

c语言题库之多个数组从两边移动向中间汇聚

文章目录 题目分析代码实现代码分析 题目 c语言题库之多个数组从两边移动向中间汇聚 呈现效果:输入想要输入的字符数组呈现数组从两边向中间逐渐打开的样子 分析 首先我们需要一组我们想要输入的字符数组用来展示打开的字符其次我们需要进行对数组的替换&#x…

系统加固-自用

一、windows 1、概述 (1)、权限最高:system(系统账户),权限比administrator权限还高 (2)、常见操作系统安全漏洞类型 缓冲区溢出漏洞TCP/IP协议漏洞web应用安全漏洞开放端口的安全漏洞 2、系统安全加固方法 (1)、系统不显示上次登录的用户名 进入…

nss刷题(2)

1、[NSSCTF 2022 Spring Recruit]ezgame 打开题目是一个游戏界面 发现是有分数的,猜测分数达到某个之后可以获得flag,查看源码看一下 看到末尾显示分数超过65后显示flag 在js中找到了一个score,将他的值改为大于65的数后随意玩一次就可以得到flag同时&a…

【设计模式】之代理模式(两种)

系列文章目录 (其他设计模式可以参考 👉👉👉)设计模式_小杰不秃头的博客 😊😄😛 前言 今天继续给大家介绍23种设计模式中的代理模式,熟悉Spring的小伙伴都知道&#xf…

文心一言指令:解锁AI写作的新纪元

文心一言指令:解锁AI写作的新纪元 一、引言 在人工智能(AI)飞速发展的今天,自然语言处理(NLP)技术取得了显著的进步。文心一言,作为NLP领域的一颗璀璨明星,以其强大的文本生成和指令…

可行性判定(c++)

可行性判定 当前有 N 件物品和一个容积为 V 的背包。 已知第 i 件物品的体积是 ci​,每种物品有且仅有一件,每一件物品能够选择放或者不放入背包。 现在我们不考虑物品的价值,只关心是否能够取出若干个物品,恰好使这个背包被装…