技术提问帖发帖规则(创建提问帖前必读)

从论坛创建以来,出现了很多糟糕的提问帖。这些帖子在整体上来说,标题模糊不清,语言组织混乱,排版乱七八糟;具体来说,出现了 XX 错误,但完整的错误输出都不提供,只截了一小块图片;或者只说哪里出错,但不给出相关的代码。

为了减少这种现象,希望每一个人发帖(创建新主题)进行提问前都要阅读并严格遵守下面的要求。

本文的要求仅适用于涉及特定代码和程序错误的提问帖。

发帖前的要求

你应该先尝试自己解决,并尝试培养独立解决问题的能力。如果在做完下面这些工作后,仍然没有解决问题,再来提问:

  • 检查代码是否有语法错误。
  • 使用文本对比工具和示例程序源码对比。
  • 查看相应内容的文档。
  • 使用 Google / StackOverflow 搜索关键字并尝试解决。

对标题的要求

除了不要使用多个连续标点这类基本的格式规则,标题应该尽量包含问题的关键信息,具体见下面的例子。

下面是一些坏标题示例:

  1. url参数问题
  2. 关于第九章程序的问题
  3. 关于在Pythonanywhere部署代码出错问题

下面是修改后的正常标题:

  1. 通过 URL 传递参数应该使用查询字符串还是 URL 变量?
  2. 如何在 Albumy 登录页面实现人脸识别功能?
  3. 在 PythonAnywhere 部署 Watchlist,使用 Pipenv 安装依赖时提示 Flask-Login 包的 hash 不匹配

请仔细体会前后的具体变化。总之,请避免下面格式的标题:

  • XXX 问题
  • XXX 程序出错
  • 关于 XXX 问题
  • 关于 XXX 出错问题
  • 第 X 章 XX 问题
  • XXX 疑问
  • 关于 XX 问题,求帮助!!!
  • ???
  • !!!

你需要尝试用简短的一句话让别人明白你要问什么,而不是制造一团迷雾。我没有时间和精力一一修改坏标题,请务必遵守这一条。

对分类和标签的要求

分类和标签输入框不是摆设,请记得使用。除非你的问题找不到对应的分类,否则不要使用默认标题,标签同理。

对帖子正文的要求

你需要尽可能提供下面这些信息(不要求包含每一条信息,可根据实际情况调整):

  • 你期望的行为。
  • 实际行为。
  • 所有相关的、最小化的、完整的、可复现相关问题的代码,使用文本的形式给出。
  • 完整的错误回溯信息,使用文本的形式给出。
  • 完整的命令行输出,包括输入的命令和命令前的提示符、当前路径,使用文本的形式给出。
  • 在错误发生前你的操作、执行的命令、代码改动。
  • 你尝试过的解决方法,尝试的结果。
  • 提供使用的库 / Python 版本、软件版本、操作系统型号等相关环境信息。

对代码块、错误输出和命令行输出的格式化要求

这三类信息必须使用纯文本,不要截图。

所有的代码块、错误输出、命令行输出都需要使用代码块进行格式化,在对应文本前后各新建一行添加三个连续英文反引号 ```(或者选择代码文本后点击编辑器工具栏的代码格式化按钮),示例如下:

```
def hello():
    return ‘Hello World’
```

上面的代码会被渲染为:

def hello():
    return 'Hello World'

不要制造垃圾

为了节省大家的时间,语言混乱,排版糟糕,信息不全的帖子将被要求修改,或是作关闭处理。论坛是一个公共空间,不是自家客厅,请遵守基本的发帖礼仪,不要制造垃圾,不真诚的帖子也不会被真诚对待。

3 个赞