chatGPT对于一个python初学者有什么用?

Table of Contents

目录

  • 一、前言
  • 二、开始请教
  • 三、总结

一、前言

我最近开始学习python,感觉python整体语法啥的还是很好学的,但是正是由于太简单,且我还有多年的java编程基础,便很难沉下心去学习。想到之前看到的一段话:人性总是趋利避害的,做一件事情没有短期、中期、长期的正反馈。不利于一致坚持做下去。 想到之前搞java 的经验:想快速上手java,并对java程序产生兴趣 那就是拿java写出各种各样的小工具,获取短期的正反馈,培养学习Java的兴趣,故我在学习python的时候,也想这样切入,再次感叹python的GUI类库真是太全面,语法使用啥的都很简单,故写了一篇 python干饭神器—今天吃什么?python告诉你 ,写完以后还是小有成就感,但是想着我这样写的是不是不太正规?会不会代码结构不够规范呢?身边认识的也没有会python的,正在苦思冥想之际,突然刷到一个 chatGPT的相关的推文,这不是巧了吗?😎 我可以让chatGPT 当我的老师,帮我检查我的代码或者给我一个代码示例,同时还可以检验一下chatGPT真的有大家说的那么厉害吗? 一箭双雕岂不是美哉?😎😎😎

二、开始请教

我写的程序其实简单来说就是一个轮播图(如上图所示),同时还有可以手动切换的功能,故我就这样像chatGPT发起了提问:用python 写一个带界面 可切换的轮播图, 没想到 chatGPT 的反应很快啊,嗖的一下 就开始编码了,丝毫不带犹豫的:

完整python代码:

import tkinter as tk
from PIL import ImageTk, Image

class App(tk.Tk):
    def __init__(self, images):
        super().__init__()
        self.images = images
        self.current_image = 0
        self.create_widgets()

    def create_widgets(self):
        self.canvas = tk.Canvas(self, width=400, height=300)
        self.canvas.pack()
        self.show_image()

        prev_button = tk.Button(self, text='Prev', command=self.prev_image)
        prev_button.pack(side=tk.LEFT)

        next_button = tk.Button(self, text='Next', command=self.next_image)
        next_button.pack(side=tk.RIGHT)

    def show_image(self):
        image = Image.open(self.images[self.current_image])
        image = image.resize((400, 300), Image.ANTIALIAS)
        photo = ImageTk.PhotoImage(image)
        self.canvas.create_image(0, 0, anchor=tk.NW, image=photo)
        self.after(5000, self.next_image)

    def prev_image(self):
        self.current_image -= 1
        if self.current_image < 0:
            self.current_image = len(self.images) - 1
        self.canvas.delete('all')
        self.show_image()

    def next_image(self):
        self.current_image += 1
        if self.current_image >= len(self.images):
            self.current_image = 0
        self.canvas.delete('all')
        self.show_image()


if __name__ == '__main__':
    images = ['image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg']
    app = App(images)
    app.mainloop()

chatGPT写这段这么长的代码没超过1分钟且看上去还很规范,而我写的那段代码花了我差不多1上午的时间,(我好菜,😭😭😭),我修改了一下 图片的获取路径,便到编译器去运行了一下,本以为会一把过,没想到程序运行没有报错,但是图片没有加载出来,难道是我把代码的改坏了?🤔,我为了偷懒就写了一个函数遍历某一个文件夹下面的图片,仔细检查了一下没有发现什么错,于是乎我把完整代码 贴给 chatGPT 让他帮我找bug,

他又给我提供了一个方案 我试了一下还是不行,接着提问:

这次它直接教我在代码加上 try catch 来捕获异常,不得不说 chatGPT还是有2把刷子的,考虑问题全面,还能手把手教学写代码 👍👍👍,于是乎我又加了一点需求 要求程序窗口需要在屏幕中央(居中显示)并让它把完整代码都打印出来:

import os
import tkinter as tk
from PIL import ImageTk, Image

class App(tk.Tk):
    def __init__(self, images):
        super().__init__()
        assert tk.TkVersion >= 8.6, "PhotoImage not supported with this version of Tkinter"
        self.images = images
        self.current_image = 0
        self.create_widgets()

    def create_widgets(self):
        self.canvas = tk.Canvas(self, width=800, height=600)
        self.canvas.pack()
        self.show_image()

        prev_button = tk.Button(self, text='Prev', command=self.prev_image)
        prev_button.pack(side=tk.LEFT)

        next_button = tk.Button(self, text='Next', command=self.next_image)
        next_button.pack(side=tk.RIGHT)

    def show_image(self):
        try:
            self.image_obj = Image.open(self.images[self.current_image])
            image = self.image_obj.resize((800, 600), Image.LANCZOS)

            # photo = ImageTk.PhotoImage(image)
            # self.canvas.create_image(0, 0, anchor=tk.NW, image=photo)
            self.photo = ImageTk.PhotoImage(image)
            self.canvas.create_image(0, 0, anchor=tk.NW, image=self.photo)
            #self.after(5000, self.next_image)
        except Exception as e:
            print(f"Error: {e}")
            print(f"Image file path: {self.images[self.current_image]}")

    def prev_image(self):
        self.current_image -= 1
        if self.current_image < 0:
            self.current_image = len(self.images) - 1
        self.canvas.delete('all')
        self.show_image()

    def next_image(self):
        self.current_image += 1
        if self.current_image >= len(self.images):
            self.current_image = 0
        self.canvas.delete('all')
        self.show_image()


if __name__ == '__main__':
    # 指定目录
    directory = "imgs/"

    # 获取目录下的所有文件的绝对路径
    file_paths = []
    for filename in os.listdir(directory):
        path = os.path.join(directory, filename)
        if any(ext in filename.lower() for ext in ('jpg', 'jpeg', 'png', 'gif')):
            file_paths.append(path)
            print(path)

    app = App(file_paths)
    app.mainloop()

三、总结

经过一番试用 不得不说chatGPT还是很棒的,写代码真是66的,的确比之前接触的人工智能产品要完全提升一个层次,也真的让人感觉配得上智能二字。但是,要说替代程序员估计还有很长的距离。从目前来看,它在某些方面充当辅助工具是可以胜任的,例如,搜索引擎、编程开发。但是像架构设计这一块还是不能胜任。所以我们程序员完全可以把chatGPT当成一个良师益友,帮助我们进行编程开发。

文章出处登录后可见!

立即登录
已经登录? 立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
0
已解决note: This error originates from a subprocess,and is likely not a problem with pip.
上一篇 2023年4月23日
Python调用OpenAI API示例
下一篇 2023年4月23日

相关推荐

  • C++第十三弹—内存管理(下) 2024年4月10日
  • 【C/C++】C语言开发者必读:迈向C++的高效编程之旅 2024年4月10日
  • Python中的8种运算符 2023年4月22日
  • 轻松玩转开源大语言模型bloom(四) 2023年8月16日
  • 【愚公系列】2023年03月 Halcon机器视觉-软件的安装 2023年4月25日
  • 华为OD机试真题-停车场车辆统计-2023年OD统一考试(C卷) 2024年4月16日
  • C语言-内存函数详解 2023年12月15日
  • Python基础PTA习题答案 2023年5月24日
  • 使用 NumPy 随机生成矩阵 2023年10月18日
  • python语法教程——def()函数 2023年3月5日
  • Anaconda查看、创建、切换虚拟环境 2022年3月21日
  • Python 集合探索:解密高效数据操作和快速算法的奇妙世界 2023年7月11日
  • Multilayer Perceptron实验报告(手工实现MLP) 2022年3月29日
  • OpenMV零基础教程 2023年3月12日
  • 无卷积步长或池化:用于低分辨率图像和小物体的新 CNN 模块SPD-Conv 2022年10月8日
  • 【Yolov5】1.认真总结6000字Yolov5保姆级教程 2022年3月29日

赞助商

此站出售,如需请站内私信或者邮箱!

玻璃钢生产厂家江西玻璃钢人物雕塑价格范围小品玻璃钢卡通雕塑代理价格红军玻璃钢雕塑马鞍山玻璃钢雕塑人物设计黄铜玻璃钢雕塑商场美陈评选方案深圳季节性商场美陈供应商常德玻璃钢牌匾雕塑品牌玻璃钢卡通雕塑销售厂嘉兴玻璃钢仿真水果雕塑厂家云浮玻璃钢卡通雕塑批发美陈玻璃钢动物雕塑批量定制州玻璃钢雕塑玻璃钢雕塑生产许可证云南户内玻璃钢雕塑威海玻璃钢仿铜雕塑定制陕西景观玻璃钢雕塑订做价格沈阳仿木玻璃钢雕塑淮南校园玻璃钢雕塑常见玻璃钢花盆价钱天水仿真人物玻璃钢雕塑公司开封制作玻璃钢雕塑产品报价长沙动漫玻璃钢雕塑番禺玻璃钢雕塑广州深圳周边商场美陈供货商温州人物玻璃钢雕塑北京通道商场美陈销售企业商场美陈全年计划东莞玻璃钢透光雕塑工艺青海玻璃钢海豚雕塑定制香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化