学习python,少不了提问。无论是购买了教程,在交流群里提问,还是在论坛上向大佬请教,抑或是在工作中请教同事,好的提问,会让问答这个过程事半功倍地进行。
今天,我们就专门聊聊“如何提问”,掌握正确的提问方式,就能最快解决问题,也就能更快提高。
一、正确准备你的问题
好的问题,首先自己要看懂意思,描述要通顺;其次要完整而清楚,包含足够多的信息,说明白问题的起因。我们看一个不方便解答的提问实例:
首先需要指出的是, 所有不附上具体内容、看不到代码,看不到 错结果的提问,都是耍流氓 。正如医生诊断病情需要先让病人验血验尿得出一系列检查 告,才能推测病情,老师也需要看到代码、 错,甚至提问者的操作过程、意图,才能推测出错误。
回到截图上的常见问题:按照教程上却出错。遇到这种问题,首先应该检查 符 、拼写、缩进等初学者常犯的错误 。如果发现没有错误,却还是 错,接下来应该排除的是 工具包版本和课程不一样 导致的 错,尝试更新工具包。当然还有一种可能:
重启重装解决80%的问题
那么什么样的 错截图和提问方法才是正确的呢p>
此外,我们还建议大家提问时,叙述清楚自己的操作目的,再附上代码和 错的截图:
因为我们写代码的目的是 顺利实现某个功能 而不仅仅是跑通,能顺利完成要求的代码才是我们需要的。 叙述清楚代码目的,能让老师对你写的代码进行更有效的指导。
二、善用搜索引擎节约一大半的提问时间
“提问——等回答”的过程毕竟有一定的时间成本,有些问题只要善用搜索引擎,就可以即时得到解决。但搜索引擎毕竟不是人工,直接给 错截图是得不到回答的,如何让它“听懂”你的问题呢p>
1、直接搜索 错关键字
以一个新手很可能遇到的invalid syntax问题为例。
这是初学者很容易出现的“ 缺胳膊少腿型 ”语法错误,很多朋友看到英文就会自动屏蔽不去阅读。其实只要大家简单搜一下最后一句:invalid syntax,就能知道这样的 错主要原因是什么(有时候不同编程语言的 错提示是一样的,加上语言名字会更有针对性):
打开其中一个看上去有点东西的答案链接,有用的答案会举出犯这样错误的例子。看到别人 错的例子,大家也更可能会联想到一些自己可能不小心的地方,再度检查代码,找出bug。与此同时,大家也会学到 “invalid syntax”是指语法有误,可能在 错标记的前后,缺少或多出了某些字符。
这一类的错误一定要学会自己排查,并且在不断debug过程中养成遵 守语法的好习惯。
2、没有 错文字,用简洁的语言和关键字描述问题
同样,还是先举例子:
这个问题也是同学们经常遇到的:Jupyter不运行代码,左侧显示“*” 。虽然没有跳出来 错文字,但我们还是可以搜索“Jupyter 星 ”寻找答案,这里以在CSDN搜索为例:
果然能找到许多文章在讲述我们遇到的问题,随便点进一篇,就能知道,这个情况说明可能是上面的执行框出现错误,如果久等不出结果可以尝试重启kernel从上向下检查每个框并找到错误代码修改。
当然 如果一直没有找到你想看的答案,那么可以尝试联想新的关键词进行搜索 ,比如搜索“jupyter 不运行”“jupyter 运行 没反应”等等。这种方法同样适用于百度搜索。
3、善用翻译软件协助阅读 错
一句英文都不想读,何况一段英文/p>
这里同样也是一个常见问题,当同学们想要使用pip安装或者升级一些包的时候,如果pip版本不对就很可能不成功,窗口上会跳出这几行字。其实只要耐着性子读一遍 错,就会知道,这里的 错其实已经给我们提示了解决办法:您正在使用pip版本8.1.2,但版本19.1.1可用。您应该考虑通过’python -m pip install –upgrade pip’命令进行升级。
但是,就是不喜欢读英文怎么办就应该掏出Google翻译(不用翻墙),把不想读的英文粘贴进去:
大段英文还会出现在搜 错的过程中,因为很多解释 错的 页都是英文的,这时候就可以掏出另一个神器,Chrome浏览器的翻译成中文功能:
这样就很好阅读了:
总结一下,初学者如何利用搜索引擎:可以直接搜索关键词,可以使用简洁的问题描述进行搜索,还可以使用翻译软件辅助阅读 错。学会利用互联 来帮助自己学习能大大提高效率。
三、技术 站的正确打开方式
学习Python的同学除了百度,还可以在这些技术 站上搜索自己遇到的问题:
CSDN: https://www.csdn.net/
国内专业的技术IT 区,集聚了大量的软件开发者和学习者,这里强烈推荐 博客、下载 两个板块。
你可以像前文一样 在博客部分直接搜索你的问题,并查看其他博主的解决办法 ; 而“下载”栏目则有很多非常有用的学习资料:
想找特定的资源可以直接搜关键字,不过需要注意的是, 程序语言是不断在更新迭代的,请大家尽量找最新的资料下载学习。
简书: https://www.jianshu.com/
随意点开其中一篇,长这样:
从别人整理好的资料中挑选自己所需,比盲找效率高很多,但也要注意: 学习在精不在多,宁愿钻研1份好的资料也不要收集100份资料放在 盘吃灰。
StackOverflow: https://stackoverflow.com/
StackO verflow是一个宝库型问答论坛 ,能找到各种和开发相关语言的bug解决办法,内容丰富。由于是技术型论坛,在上面搜索问题和答案,也有一定的技巧,比如:
1、只搜索标题的方法是在关键词前加上title:
2、使用*来扩大搜素范围,比如搜索no module,但不确定module名字的问题:
3、每个问题在提出的时候,提问者会给问题打标签,那么搜索者就可以使用[tag]方法来搜索标签,比如搜索[python3]来锁定python版本:
*更多的高级搜索提示:
https://stackoverflow.com/help/searching
不论是提问内容,还是回答问题的内容,Stack Overflow都是一个值得学习的地方, 一方面它教你如何完整清晰地提出技术问题,一方面它教你如何快速准确的搜索答案。
如果实在解决不了,就尝试自己提问吧。将清楚而完整的问题描述,和你自己尝试过的诊断步骤一起提出。这也是StackOverflow的 区文化: 提问和回答都要有自己的思考价值。 礼貌谦虚好学的态度会让你更容易获得需要的回答。
当然,Stack Overflow的界面是英文的,善用上文提到的chrome的“翻译成中文”功能会让你事半功倍。
GitHub: https://github.com/
GitHub可能是全球最大的程序员 交友 站。有许多优秀的开发者会在GitHub上传分享自己的项目代码和经验。
新手程序员养成记录代码的习惯非常有用。将自己练习过的代码整理并上传到GitHub仓库上,随着时间的积累可以看到自己的进步轨迹也是一件很开心的事情。而ISSUES功能不仅能当做笔记使用,还可以作为事项管理的工具——
文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览214689 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!