④. GPT错误:导入import pandas as pd库,存储输入路径图片信息存储错误

news2025/6/21 5:19:34

꧂ 问题最初꧁

用 import pandas as pd  
可是你没有打印各种信息

input输入图片路径
print图片尺寸 大小 长宽高 有颜色占比>0.001的

按照大小排序



将打印信息存储excel表格

文件名 表格路径 图片大小 尺寸 颜色类型 占比信息

input输入的是文件就处理文件
是文件夹📁就处理文件。路径下的图片
1. 是处理本路径图片
2. 处理文件夹下,是遍历此目录树下所有的图片文件

/storage/emulated/0/代码文件/excel/

命名:图片尺寸表格 ("%Y-%m-%d %H:%M:%S").后缀名

可以将颜色信息从元组转换为字符串形式,然后再保存到Excel表格中。
确保对保存路径所在的目录具有写入权限。使用os.makedirs()函数创建目录。
在保存表格之前,检查保存路径所在的目录是否已存在,若不存在则创建。

由我来选择用什么方式?

input输入图片路径啊
print图片尺寸 大小 长宽高 有颜色占比>0.001的

按照大小排序

先保存txt,用制表符的方式
然后转excel表格

将打印信息存储excel表格
数值小数点获取0.001

꧂代码报错❌ ꧁

❌❌❌❌❌❌❌❌❌❌❌❌❌
抱歉之前的回答恶意有按照你的要求来处理图片信息并不保存的,以下是根据你的要求进行修改的“能使用的”代码:

import os
from datetime import datetime
from PIL import Image
import pandas as pd


def get_image_info(file_path):
    try:
        # 获取图片信息,包括尺寸、大小和颜色占比大于0.001的信息
        image = Image.open(file_path)
        size = image.size
        width, height = size[0], size[1]
        file_size = os.path.getsize(file_path)

        colors = image.getcolors()
        color_info = []
        for color in colors:
            if color[0] / (width * height) > 0.001:  # 颜色占比超过0.001
                color_info.append(color)

        return {
            '文件名': os.path.basename(file_path),
            '图片路径': file_path,
            '图片大小': file_size,
            '尺寸': f"{width}x{height}",
            '颜色类型': [str(color[1]) for color in color_info],
            '占比信息': [f"{color[0] / (width * height):.3f}" for color in color_info]
        }
    except Exception as e:
        print(f"获取图片信息失败:{str(e)}")
        return None


def save_to_txt(file_info_list, output_path):
    try:
        with open(output_path, 'w') as f:
            # 标题行
            f.write("文件名\t图片路径\t图片大小\t尺寸\t颜色类型\t占比信息\n")

            # 数据行
            for file_info in file_info_list:
                f.write("\t".join([
                    file_info['文件名'],
                    file_info['图片路径'],
                    str(file_info['图片大小']),
                    file_info['尺寸'],
                    ",".join(file_info['颜色类型']),
                    ",".join(file_info['占比信息'])
                ]) + '\n')

        print("信息已保存至txt文件:", output_path)
    except Exception as e:
        print(f"保存到txt文件失败:{str(e)}")


def txt_to_excel(txt_path, excel_path):
    try:
        with open(txt_path, 'r') as f:
            # 读取txt文件内容
            lines = f.readlines()

            # 将数据转为DataFrame
            data = []
            headers = [header.strip() for header in lines[0].split('\t')]
            for line in lines[1:]:
                fields = [field.strip() for field in line.split('\t')]
                data.append(dict(zip(headers, fields)))
            df = pd.DataFrame(data)

            # 存储为Excel表格
            df.to_excel(excel_path, index=False)
            print("信息已保存至Excel表格:", excel_path)
    except Exception as e:
        print(f"从txt文件转换为Excel表格失败:{str(e)}")


def process_images(input_path, output_path):
    file_info_list = []
    if os.path.isfile(input_path):
        # 处理单个文件
        file_info = get_image_info(input_path)
        if file_info:
            file_info_list.append(file_info.copy())
    elif os.path.isdir(input_path):
        # 遍历目录下的所有图片文件
        for dirpath, _, filenames in os.walk(input_path):
            for filename in filenames:
                file_info = get_image_info(os.path.join(dirpath, filename))
                if file_info:
                    file_info_list.append(file_info.copy())

    if file_info_list:
        # 按照大小排序
        file_info_list.sort(key=lambda x: x['图片大小'])

        # 保存到txt文件
        save_to_txt(file_info_list, output_path)

        # 转为Excel表格
        excel_path = output_path.replace('.txt', '.xlsx')
        txt_to_excel(output_path, excel_path)
    else:
        print("找不到有效的图片文件。")


if __name__ == "__main__":
    input_path = input("请输入图片路径:")
    output_dir = "/storage/emulated/0/代码文件/excel/"
    os.makedirs(output_dir, exist_ok=True)
    output_filename = datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ".txt"
    output_path = os.path.join(output_dir, output_filename)

    process_images(input_path, output_path)

在这个代码中,我们使用了pandas库来保存数据到Excel表格中。请确保你已经安装了pandas库。

代码首先会读取用户输入的图片路径,然后获取图片的尺寸、大小以及颜色占比大于0.001的信息。接着,它会将这些信息保存到txt文件中,并将txt文件转换成Excel表格。

在这里插入图片描述

最后,程序会根据用户的输入路径是文件还是文件夹,来处理相应的图片信息。如果输入的是文件路径,则处理单个文件;如果输入的是文件夹路径,则遍历该目录下的所有图片文件。

请注意,为了方便展示和保存,我们将颜色占比信息保存为字符串形式,并保留小数点后三位。

꧂ 完整报错꧁

/data/user/0/org.qpython.qpy/files/bin/qpy thon3.sh "/storage/emulated/0/qpython/评论 截图问题1.矩阵2.1.2.1空行问题3.4.6色心6.6꧂ python图片:获得颜色占比,图片尺寸1.2保存表格1.5.3.py" && exit
比,图片尺寸1.2保存表格1.5.3.py" && exit < 请输入图片路径:/storage/emulated/0/DCIM/1 696948008360.png
获取图片信息失败:'NoneType' object is not  iterable
找不到有效的图片文件。
type: <class 'str'>
value: hello
pause at line: 评论截图问题1.矩阵2.1.2.1空 行问题3.4.6色心6.6꧂python图片:获得颜色占比,图片尺寸1.2保存表格1.5.3.py: 30
Help on class str in module builtins:

class str(object)
 |  str(object='') -> str
 |  str(bytes_or_buffer[, encoding[, error s
]]) -> str
 |
 |  Create a new string object from the gi v
en object. If encoding or
 |  errors is specified, then the object m u
st expose a data buffer
 |  that will be decoded using the given e n
coding and error handler.
 |  Otherwise, returns the result of objec t
.__str__() (if defined)
 |  or repr(object).
 |  encoding defaults to sys.getdefaultenc o
ding().
 |  errors defaults to 'strict'.
 |
 |  Methods defined here:
 |
 |  __add__(self, value, /)
 |      Return self+value.
 |
 |  __contains__(se
lf, key, /)
 |      Return key in self.
 |
 |  __eq__(self, value, /)
 |      Return self==value.
 |
 |  __format__(self, fo
rmat_spec, /)
 |      Return a formatted version of the  s
tring as described by format_spec.
 |
 |  __ge__(self, value, /)
 |      Return self>=value.
 |
 |  __getattribut
e__(self, name, /)
 |      Return getattr(self, name).
 |
 |  __getitem__(self,
 key, /)
 |      Return self[key].
 |
 |  __getnewargs_
_(...)
 |
 |  __gt__(self, value, /)
 |      Return self>value.
 |
--More--

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

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

相关文章

Centos7安装Gitlab--gitlab--ee版

1 安装必要依赖 2 配置GitLab软件源镜像 3 下载安装GitLab 4 查看管理员root用户默认密码 5 登录GitLab 6 修改密码 7 gitlab相关命令 1 安装必要依赖 sudo yum install -y curl policycoreutils-python openssh-server perl sudo systemctl enable sshd sudo systemctl sta…

Macos音乐制作:Ableton Live 11 Suite for Mac中文版

Ableton Live 11是一款数字音频工作站软件&#xff0c;用于音乐制作、录音、混音和现场演出。它由Ableton公司开发&#xff0c;是一款极其流行的音乐制作软件之一。 以下是Ableton Live 11的一些主要特点和功能&#xff1a; Comping功能&#xff1a;Live 11增加了Comping功能…

Delphi 生成包含图片的 HTML 文件并使用 Edge 浏览器打开

在 Delphi 中&#xff0c;可以使用以下代码生成包含图片的 HTML 文件&#xff0c;并使用 Edge 浏览器打开该文件。 procedure GenerateHTMLWithImageAndOpenWithEdge; varOpenDialog: TOpenDialog;HTMLFileName: string;HTMLContent: TStringList; beginOpenDialog : TOpenDi…

万字长文带你了解 CloudOps 自动化运维的奥秘,助力云上业务高效稳定运行

云布道师 为了更好地帮助用户提升云上 DevOps 实践效率&#xff0c;缩短开发周期提升业务效率的同时&#xff0c;也能让业务保持稳定、安全、可靠&#xff0c;且低成本地持续运营&#xff0c;阿里云弹性计算团队独家出品的【弹性计算技术公开课_CloudOps 云上运维季】正式启动。…

【C++初阶】前言——C++的发展简述及学习方法分享

主页点击直达&#xff1a;个人主页 我的小仓库&#xff1a;代码仓库 C语言偷着笑&#xff1a;C语言专栏 数据结构挨打小记&#xff1a;初阶数据结构专栏 Linux被操作记&#xff1a;Linux专栏 LeetCode刷题掉发记&#xff1a;LeetCode刷题 算法&#xff1a;算法专栏 C头…

基于轩禹秒杀ctfshow-RSA

目录 babyrsa easyrsa1 easyrsa2 easyrsa3 easyrsa4 easyrsa5 easyrsa6 RSA算法是一种非对称加密算法&#xff0c;与对称加密算法不同的是&#xff0c;RSA算法有两个不同的密钥&#xff0c;一个是公钥&#xff0c;一个是私钥。 CTF中常见的有&#xff1a;广播攻击、共…

理解线程池源码 【C++】面试高频考点

理解线程池 C 文章目录 理解线程池 C程序源码知识点emplace_back 和 push_back有什么区别&#xff1f;互斥锁 mutexcondition_variablestd::move()函数bind()函数join 函数 线程池的原理就是管理一个任务队列和一个工作线程队列。 工作线程不断的从任务队列取任务&#xff0c;然…

JDBC加载.properties文件的两种方式

maven项目 读resources下文件 也可以 也可以用ResouseBundle 对于ClassLoader这种方式,测试ok,但是打成war包部署到服务器,可能出现问题,什么原因不知道,以后来写

第十三更---程序员常用网站一览

今天聊点题外话。大家都在那里查找资料呢&#xff0c;如今的资源网站太多了&#xff0c;眼花缭乱。今天我把一些常见的平台罗列一下 大家还有什么宝藏网站的话多多评论区分享吧 目录 一.CSDN 二.掘金 三.菜鸟教程 四.MDN 五.牛客 六.博客园 七.b站 八.微信读书 一.CSD…

SNAP处理数据C盘越用越小,Datatype out of range报错

SNAP处理数据C盘越用越小&#xff0c;Datatype out of range报错 问题描述 SNAP处理的影像比较多了之后&#xff0c;占用C盘临时存储空间&#xff0c;在做处理时&#xff0c;一直报错Datatype out of range 原因 临时存储不够了&#xff0c;需要释放一下之前的空间。 解决…

网络-navigator.sendBeacon

文章目录 前言一、navigator.sendBeacon是什么&#xff1f;优点缺点 二、navigator.sendBeacon应用场景三、navigator.sendBeacon的使用四、用户停留时间埋点总结 前言 本文主要记录navigator.sendBeacon异步请求的使用&#xff0c;以及应用场景和埋点小demo。 一、navigator.…

Xray联动burp进行渗透测试

与 Burp 联动 - xray 安全评估工具文档 这是Xray的官方文档 Xray的被动扫描发送的流量比较小&#xff0c;Xray可以联动burp suite 使用&#xff0c;将burp抓到的包发给Xray&#xff0c;我们只需要配置好代理一直点就行&#xff0c;然后查看渗透测试报告 xray_windows_amd64.e…

YOLOv5算法改进(3)— 注意力机制介绍(ECA、SOCA和SimAM)

前言:Hello大家好,我是小哥谈。注意力机制是近年来深度学习领域内的研究热点,可以帮助模型更好地关注重要的特征,从而提高模型的性能。注意力机制可被应用于模型的不同层级,以便更好地捕捉图像中的细节和特征,这种模型在计算资源有限的情况下,可以实现更好的性能和效率。…

vulnhub_Fowsniff靶机渗透测试

Fowsniff靶机 靶机地址&#xff1a;https://www.vulnhub.com/entry/fowsniff-1,262/ 文章目录 Fowsniff靶机信息收集web渗透密码碰撞POP3邮件服务器渗透获取权限权限提升靶机总结 信息收集 通过nmap扫描&#xff0c;靶机开放22 80 110 143端口&#xff0c;110是pop3邮件服务…

京东运营数据分析:2023年8月京东宠物主粮行业品牌销售排行榜

鲸参谋监测的京东平台8月份宠物主粮市场销售数据已出炉&#xff01; 随着养宠人群的逐渐增多&#xff0c;宠物经济规模也进一步庞大。宠物生活市场中&#xff0c;宠物主粮作为养宠人群的刚需品&#xff0c;其市场规模也在进一步扩大。鲸参谋数据显示&#xff0c;今年8月份&…

如何将中文翻译成日语:文件批量重命名的有效方法

随着全球化的发展&#xff0c;多语言交流变得越来越重要。在许多情况下&#xff0c;我们需要将中文文件翻译成日语&#xff0c;以便更好地进行国际交流。在这个过程中&#xff0c;文件重命名是一种非常有效的技巧&#xff0c;可以帮助我们更快、更准确地完成翻译任务。本文将介…

南美乌拉圭市场最全分析开发攻略,收藏一篇就够了

乌拉圭国家虽小&#xff0c;但是消费能力是不低的&#xff0c;也是南美南美最富的国家之一。中国是乌拉圭第一大贸易伙伴&#xff0c;乌拉圭公民对中国及中国的商品好感度较高&#xff0c;2022年初&#xff0c;中国-乌拉圭海关AEO互认&#xff0c;为中乌经贸合作发展注入了新动…

【Spring AOP】统一用户登录校验

统一用户登录校验 一. 使用拦截器实现统一用户登录校验1. 自定义拦截器2. 将拦截器加入到系统配置 二. 拦截器实现原理三. 扩展&#xff1a;统一访问前缀添加 一. 使用拦截器实现统一用户登录校验 Spring 中提供了具体的实现拦截器&#xff1a;HandlerInterceptor&#xff0c;…

【计算机系统】校验码

【计算机系统】校验码 校验码奇偶校验码海明码校验位的位数校验位的位置确定校验的值校验错误检测 循环冗余校验码 校验码 计算机系统运行时&#xff0c;为了确保数据在传送过程中正确无误&#xff0c;一是提高硬件电路的可靠性&#xff0c;二是提高代码的校验能力。通常使用校…

使用telnet+nc工具测试网络连通性

背景&#xff1a; 正常情况下使用ping命令即可测试网络的连通性&#xff0c;但如果做了内网穿透(端口转发)&#xff0c;则需要指定网络端口&#xff0c;此时ping命令无法实现ipport的连通性测试。则可以使用telnetnc测试网络连通性。 环境&#xff1a; 两台服务器都是按照的De…