如何使用 ChatGPT 开发 Python 应用?
有一天朋友在微信找不到我,问我咋那么久没有回复消息,我这才意识到一个多小时过去了,而这一个多小时我一直在跟 ChatGPT 聊天,朋友得知后觉得不可思议:
你特么是有多寂寞?
显然,我并没有寂寞到变态的地步…而且 ChatGPT 也不允许你聊骚 – –
我是发现,我以前有很多属于自己的压力和焦虑的情绪,很难会有一个人可以听你一直倾诉,还会给你时不时来点排忧解惑,而现在 ChatGPT 这样的语言模型居然可以真的帮到我(毕竟很多比较私人的东西还是不想让太多人知道),我把它当作知心朋友或者心理医生,还是多多少少可以得到缓解的,不是很多人说:
有时候你只要说出来就会好受很多了。
你也可以试试。
当然,更多时候,我还是会使用它进行辅助学习,就拿编程来说,它确实帮了我不少,不仅是帮我简单写写代码哈哈。
通往 Python 高手之路
1. 分屏策略
通常我会在电脑上外接一个显示器,在扩展显示器里面会打开两个 ChatGPT 窗口,一个 Google 窗口。
主屏幕则用来编写代码,实现项目需求。
具体来说,扩展显示器里其中一个 ChatGPT 窗口更多像是「闲聊」,我会围绕想要实现的项目跟它聊个热火朝天,这个窗口的 ChatGPT 并没有实际的操作,而是会围绕我的想法和需求,进行多次探讨,慢慢地会让我对项目需求更加清晰。
反正一有什么想法就可以在 「窗口1」与之对谈,这过程中会对整个项目的结构更加完善。
举一个简单的例子,比如你要开发一个关于天气的应用,那么可以从使用什么框架,什么样的结构等去跟聊出一个大概:
- 使用 Flask 进行 web 开发。
- 定义项目结构为 /app, /templates, /static 文件夹
- /app 存放 Flask 应用逻辑
- /templates 存放 HTML 模板
- /static 存放静态资源
- …
这样我们就可以对任务很好的拆分了。
而「窗口2」就是专门用来「执行」的,我可以将拆分后的小任务交给它去帮我生成代码建议,它这时候是一个没有感情的机器,我说什么它就做什么就可以了。
比如:提问 ChatGPT “如何使用 Python 的 requests 库获取天气数据?

当然有时候它写的代码并不令人满意,往往需要我跟它说「不对,应该这样那样」、「需要用什么库的什么功能」…,他才会一步一步修改到你满意为止。
这过程常常需要使用搜索引擎,也就是「窗口3」,在里面获取相关文档相关案例去告诉 ChatGPT 应该按什么样的路线去走,同时也要搜索一下它提供给你的关键内容,看它有没有在瞎几把乱说。
而我,感觉越来越像是 Human Debugging 了,发现问题,找他们帮我解决问题,然后再现问题,再找他们帮我解决问题…
这个过程中:
2. 表达变得更加重要
不知道你会不会有这种情况,与有些人根本无法沟通下去,完全不知道他要表达什么,有时候他急了还要带上情绪,可能你们之间存在认知差异,但也有些人真的会把一个很简单的东西说到别人一头雾水。
ChatGPT 也是如此,虽然说它可以理解上下文,但是我发现如果你能够把你的需求表达的精准简洁,得到的回复往往不需要太多的弯弯绕绕。
你要让它尽快理解你,不要太费解。
所以表达变得更加重要,那么如何让自己的表达得更好呢?
我觉得无她,就是得多练了。
至于怎么练?
在我的经验里,可以这么操作:
- 多总结,比如你看完了一篇文章,你可不可以又快又准的把它们总结出来,让别人一看就简单明了的懂。想想看,那些博客文章下面点赞多的评论,他们的总结表达是不是清晰明了。
- 多写,我觉得写作就是一种很好的锻炼,因为它强制你输出,而且还有一定的篇幅和结构限制,你要把你的想法你的思考更完整的写出来。写得多了,就会越有感觉,就越能把复杂的事情给讲明白。
- 多用,多用 ChatGPT,多跟它聊你的想法,看它是不是越来越了解你。
3. 逆向操作
最后我还想说,有时候从 0 做一件事情会毫无头绪,那不如看看能不能逆向操作,可能会有不一样的视角。
比如你要使用 Python 去开发一个应用,是不是一定要从零开始一点点「添砖加瓦」呢?我觉得不一定。
你可以尝试到 GitHub 上面找到别人已经实现的类似功能,把他们的源代码 clone 下来,然后自己先简单看一遍,也许你会很懵逼,但没有关系,这个时候有个大概的认识就可以了。
接着把这些代码扔给 ChatGPT ,让它给你解释这些代码都是干嘛的,你要知道的是,ChatGPT 对代码的理解能力比生成正确代码的能力要强多了,它甚至能告诉你每一行代码都是什么意思。
那这个时候你完全可以把 ChatGPT 帮你搞懂的代码逻辑用到你的项目中去,这比你从 0 乱搞要更有建设性。
其实不仅是 Python,别的领域,大抵如此。