学编程遇到问题,如何更好地提问?

news2025/1/16 5:44:46

入门教程、案例源码、学习资料、读者群

请访问: python666.cn

大家好,欢迎来到 Crossin的编程教室 !

一个编程学习者,尤其是刚入门的初学者,在学习过程中必然会遇到各种问题,于是难免需要向人提问寻求解答。本编程教室开张以来,我也解答了非常多的提问。今天想就“提问”这件事情说说我的一点建议:

1. 提问之前先尝试搜索

你的问题可能是千万人曾经遇到过的小问题,搜索引擎就可以回答你。

2. 尽可能清楚、准确、完整地描述你的问题

不要只把你不懂的地方拿出来问而不提及问题的前因后果,否则回答者可能无法明白你的问题。尽量客观描述问题,而不是只说自己的理解和假设。在客观描述的基础上,你可以再加上自己的判断和尝试解决的结果。

3. 附上必要的信息

如果你的代码出了问题,请提供你的代码、运行结果、报错信息,如果有必要,最好截图(判断是否格式、书写、运行方式上有问题)和代码文本(方便别人复制并运行你的代码)都附上。不要只说“我执行了xxx语句为什么结果不对”,这样别人只能回复你“……”。

4. 最好选择聊天群和论坛提问

这一点是我个人针对本教室的听众的建议。聊天群的好处是,有很多人会看到你的问题,这里面很可能有人解决过类似的问题。即使没有现成的答案,一起讨论也有利于找到解决方案。

论坛的好处是,你的问题会记录下来,可以被更多人看到,它被解答的可能性也就更高。同时,它也会为后来的人提供参考。论坛发帖的不足之处在于可能不会立刻得到解答。

综上所述,我认为一个比较好的提问方式是:在你尝试自己搜索后依然不能解决问题时,在聊天群里或者论坛上描述清楚你的问题,包括你要做什么,遇到了什么状况,你的代码、输出、报错信息,足够信息量的截图和代码片段,你尝试过的方案和结果。这样,会让你的问题更有效地得到解决。

附上一篇文章:《提问的智慧(How To Ask Questions The Smart Way)》,由知名黑客 Eric S. Raymond 所写,并被广泛转载。你很容易在网上搜到它。

这篇文章主要是面向“黑客”所说。对于一般的编程初学者,有些要求可能略苛刻。不过参考阅读,对于你应当会有帮助。毕竟没有人会一直停留在初学者的阶段,好的习惯越早养成越早受益。

在这里,摘录其中的一些条目:

提问前

尝试在你准备提问论坛的历史文档中搜索答案

尝试搜索互联网以找到答案

尝试阅读手册以找到答案

尝试阅读“常见问题文档”(FAQ)以找到答案

尝试自己检查或试验以找到答案

尝试请教懂行的朋友以找到答案

如果你是程序员,尝试阅读源代码以找到答案

提问时

仔细挑选论坛

面向新手的论坛和互联网中继聊天(IRC)通常响应最快

第二步,使用项目的邮件列表

使用有意义且明确的主题

使问题容易回复

用清晰、语法、拼写正确的语句书写

使用易于读取且标准的文件格式发送问题

描述问题应准确且有内容

量不在多,精炼则灵

别急于宣称找到bug

低声下气代替不了做自己的家庭作业

描述问题症状而不是猜测

按时间先后罗列问题症状

描述目标而不是过程

别要求私下回复电邮

提问应明确

关于代码的问题

别张贴家庭作业式问题

删除无意义的要求

不要把问题标记为“紧急”, 即使对你而言的确如此

礼貌总是有益的

问题解决后追加一条简要说明

提问禁忌

我到哪可以找到某程序或 X 资源?

我怎样用 X 做 Y?

如何配置我的 shell 提示?

我可以用 Bass-o-matic 文件转换工具将 AcmeCorp 文档转为 TeX 格式吗?

我的{程序、配置、SQL 语句}不运行了

我的视窗电脑出问题了,你能帮忙吗?

我的程序不运行了,我认为系统工具X有问题

我安装 Linux 或 X 遇到困难,你能帮忙吗?

我如何才能破解超级用户口令/盗取通道操作员的特权/查看某人的电子邮件?

详细内容见此链接(复制到浏览器里打开),文章有些长,不过还是挺有意思的。

http://www.beiww.com/doc/oss/smart-questions.html


Crossin的新书《码上行动:零基础学会PYTHON编程(CHATGPT版)》已经上市了。

本书力求做到浅显易懂,让完全没有编程经验的零基础“小白”也能学会Python。内容从环境搭建这种最基础的步骤开始讲起,逐渐深入到常见的实际应用当中。在讲解知识点的同时配有相应的代码示例,让读者可以边学边练加深理解。

全书涵盖Python环境搭建、基础语法、常见数据类型、实用模块、正则表达式、面向对象编程、多任务编程等知识点。另外还提供了爬虫、GUI、游戏三个实战项目。

书中还创新地使用 ChatGPT 作为编程学习的辅助,带领读者探索AI时代下学习编程的新模式。

aa52def99b26265509fb3f4252cee578.jpeg

公众号的读者朋友们购买后可在后台联系我,加入读者交流群,Crossin会为你开启陪读模式,解答你在阅读本书时的一切疑问。

感谢转发点赞的各位~


_往期文章推荐_

编程教室的文章是用什么库完成的?


如需了解付费精品课程教学答疑服务

请在Crossin的编程教室内回复: 666

d55485f682c1e1ab64717b543f8b29ba.jpeg

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

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

相关文章

让AI替你打工?GPT提升开发效率指南

👉腾小云导读 开发者日常的整个工作流中,AI 大模型能做什么?ChatGPT 等 AI 大模型能不能通过开发者的指引,一步步完成从技术方案输出、编码、测试、发布到运营维护的整套流程?使用中有什么避坑点?本文从实际…

【观察】共建“伙伴+华为”背后,是华为平台到体系的战略“升维”

2017年,在当年的“伙伴大会”上,华为首次提出以“平台生态”双轮驱动的战略,以更加开放的心态积极拥抱产业变化,通过和产业链上各个层级的合作伙伴一起合作,共同实现新的市场突破。 彼时中国企业和行业的数字化转型刚刚…

2023智源大会议程公开 | 生成模型论坛

2023年,人工智能新研究、新系统、新产品竞放——我们即将见证另一场有关智能的惊叹演化。6月9日,2023北京智源大会,将邀请这一领域的探索者、实践者、以及关心智能科学的每个人,共同拉开未来舞台的帷幕,你准备好了吗&a…

chatgpt赋能Python-python_geo

Python在地理空间数据分析中的应用 在地理空间信息系统领域,Python已经成为最流行的编程语言之一。Python有许多强大的地理空间库,例如GDAL,Shapely和Fiona等,这使得它成为了地理空间数据分析中不可或缺的一部分。 1. Python的地…

快速上手打通java中的IO流

目录 IO原理 流的分类 节点流和处理流 IO 流体系 InputStream & Reader InputStream Reader OutputStream & Writer OutputStream Writer 节点流(或文件流) 读取文件 写入文件 注意点 缓冲流 转换流 标准输入、输出流 打印流 数据流 对象流 O…

chatgpt赋能Python-python_for_局部变量

Python局部变量详解 Python是一种动态语言,其中一个特点是变量声明和赋值同时进行,因此变量类型在声明时可以不指定,而是在赋值时根据数据类型来推断。Python中的变量分为全局变量和局部变量。在本文中,我们将讨论Python中的局部…

【PCB专题】案例:使用SI9000阻抗计算线宽线距为PCB Layout提供参考

在实际工作中,我们会使用到高速信号(如USB2.0、MIPI、HDMI、以太网等)或射频信号。那么在PCB中这些信号都需要做阻抗匹配,防止信号产生反射而损耗和生成噪声。 阻抗对信号质量的影响很明显,我们可以利用眼图来分析信号质量。 下图所示为TI都是在90欧姆差分阻抗源经过了90欧…

论文改进想法

论文改进想法 当 z p r e v z_{prev} zprev​(上一轮本地训练好的发往server的模型得到的表征)与 z z z(这轮正在被更新的本地模型得到的表征)相似或是差别不大时,我们将 l c o n \mathcal{l}_{con} lcon​定为0&…

Go设计模式--中介者,最后的模式!

大家好,这里是每周都在陪你一起进步的网管~!今天继续学习设计模式,也是我们要学习的最后一个设计模式—中介者模式,对这个模式有一点了解后会觉得它跟我们已经学过的观察者模式挺像,但是两者还是有些区别的…

chatgpt赋能Python-python_entry如何清空

Python Entry如何清空 Python是一种高级编程语言,因其简单易学、代码优美而被广泛应用于数据科学、机器学习、Web开发等领域。在Python中,Entry是常用的GUI元素之一,用于接受用户输入。但有时候需要清空Entry中的文本,本文将介绍…

python中字符串的类型转换

一、使用eval----含有{}字符串的转换为list、tuple、dict- eval():将字符串str当成有效的表达式来求值并返回计算结果 (1)字符串转换为列表 (2)字符串转换为元组 a " ([1,3],[1,2],[1,1])…

STM8 调试红外遥控器HS003B

背景 项目中使用STM8S003F3P6,控制红外遥控器HS003B,调试过程也遇到了很多问题,这里做个记录。 问题1:长按按键问题,如果长按遥控的某个按键,应该是一直能响应该按键值(需要对接收状态、接收信…

工作模式(3)

8bit PWM PWM模式开启时,计数器与比较寄存器连续比较,当计数值小于比较寄存器,输出为低,当计数值大于等于比较寄存器,输出为高,并且保持到计数值等于重载寄存器,然后计数器回到0开始重新计数&am…

【三维激光扫描】实验05:点云数据预处理操作

SiScan软件可以对三维激光扫描的点云数据进行一些列的预处理操作,如:粗差剔除、点云抽稀、点云分割、调整水平面、删除分割面等等。 粗差剔除剔除粗差点抽稀抽稀数据点云分割根据点云的三维特征进行分组调整水平面根据三个点来调整水平面分割面水平纠正根据分割面进行水平纠正…

小心你的 OpenAI Key 被盗!

公众号关注 “GitHubDaily” 设为 “星标”,每天带你逛 GitHub! 今年随着 ChatGPT 发布,其强悍的能力也让 GPT-3.5/4 成为炙手可热的大语言模型,使得不少 AI 应用接入了 OpenAI 接口。当用户使用这些应用时,经常需要填…

Python自动化办公对每个子文件夹的Excel表加个表头(Excel不同名)(上篇)

点击上方“Python爬虫与数据挖掘”,进行关注 回复“书籍”即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 含情凝睇谢君王,一别音容两渺茫。 大家好,我是皮皮。 一、前言 上一篇文章,我们抛出了一个问题,这篇文章…

工作模式(2)

输入捕捉 输入捕捉功能的主要特点: ⚫ 上升沿或下降沿捕捉 ⚫ 脉冲宽度捕捉或脉冲周期捕捉 ⚫ 带清零的捕捉或自由计数捕捉 ⚫ 单次捕捉或连续捕捉 捕捉模式只能工作在16bit级联模式下,从0开始计数。当选择上升沿捕捉周期模式时,电路在检测到…

chatgpt赋能Python-python_fetchone

Python fetchone方法简介 在Python编程领域中,fetchone()是一个经常使用的方法。fetchone()方法用于从数据库中获取单个结果,并将结果存储在变量中。本文将介绍fetchone()方法的详细信息,并探讨如何在Python中使用该方法。 什么是fetchone方…

chatgpt赋能Python-python_chariot

Python Chariot:一款强大的Python IDE Python Chariot是一款强大的Python IDE,它的特点是简单易用,功能齐全。该IDE适用于各种Python编程任务,无论是编写小型脚本还是大型项目。在本文中,我们将深入介绍Python Chario…

Windows本地快速搭建SFTP服务共享文件 - 外网访问【端口映射】

文章目录 1. 搭建SFTP服务器1.1 下载 freesshd服务器软件1.3 启动SFTP服务1.4 添加用户1.5 保存所有配置 2 安装SFTP客户端FileZilla测试2.1 配置一个本地SFTP站点2.2 内网连接测试成功 3 使用cpolar内网穿透3.1 创建SFTP隧道3.2 查看在线隧道列表 4. 使用SFTP客户端&#xff0…