暂时未有相关云产品技术能力~
每天5分钟,轻松学编程
这一概念来源于数学,用在编程领域中,是指计算机语言中能储存计算结果或能表示值的抽象概念。
变量命名是编程中非常基础的一个操作。所有的编程入门书籍都会提及,所有编程学习者也都了解过。
什么意思?就是说,当你被一段代码整不会了,怎么看也看不出问题出在哪里的时候。你可以对着一只小黄鸭,一行一行解释你的代码。不仅解释代码的功能,你最好还要告诉鸭子你到底想实现什么目标,以及你打算通过什么样的方法实现,为什么要这么实现等等。当你说着说着说着,哎,突然你就明白问题在哪了。就是这么的神奇。
在编程届,有一个不成文的习惯:在教授/学习一门新语言时,会以输出“Hello World”作为第一个代码实例。
用此框架代码看起来与一般代码稍有不同,它更像一个配置脚本,其中会出现很多未定义的方法和变量,因此在很多编辑器里会提示有错,但其实是可以运行的,无需手动增加 import。这也是为什么你会看到我视频里的代码截图有大量的下划线。
就像有人不懂日语,也照样能打通很多日文游戏。不懂英语至少会用翻译软件吧?先记住语法和报错最常涉及的那些单词,if 、while 、for 、class 、def 、error 、type 之类,足够你写出完整的程序。英语好不是学习编程的先决条件。
在之前的文章 用ChatGPT写一个数据采集程序 中,我们演示了如何用 ChatGPT 辅助编写代码。
lambda 表达可以被看做是一种匿名函数。它可以让你快速定义一个极度简单的单行函数。譬如这样一个实现三个数相加的函数:
既然ChatGPT可以理解并生成代码,那么自然而然,它的作用不仅仅是帮助学习代码,同样也可以直接用在实际的软件开发当中。
一个熟练的编程老手只需要用肉眼看着代码,就能对其运行的过程有所了解。然而对于刚接触编程不久的新手来说,这种事情就没那么显而易见了。于是在编写代码和调试代码时,一旦程序的逻辑有些复杂,就像掉进代码的迷宫,完全不知道东南西北。
写代码,不可避免地会出现bug。很多人在初学编程的时候,当写完程序运行时,发现结果与自己预料中的不同,或者程序意外中止了,就一时没了想法,不知道该从何下手,只能反复重新运行程序,期待忽然有次结果就对了。
关于ChatGPT的能力,大家想必都已听说,很多同学应该都亲自体验过了。其在自然语言处理方面的出色表现,绝对是颠覆了之前大众对人工智能的印象
不要只把你不懂的地方拿出来问而不提及问题的前因后果,否则回答者可能无法明白你的问题。尽量客观描述问题,而不是只说自己的理解和假设。在客观描述的基础上,你可以再加上自己的判断和尝试解决的结果。
在大多数时候,我们都在黑黢黢的控制台里执行 Python 脚本。这看起来很酷很 GEEK。但对于部分场景下的用户来说,这样就不大美观和人性化了:我们需要交互更方便的图形化产品,也就是 GUI(图形用户界面,Graphical User Interface)。
对编程新手来说,开发环境的选择常常成为入门后的第一道坎。因为捣鼓了半天没能成功运行代码而被迫从入门到放弃的情景并不少见。初上手时选择的编辑器是否易用也会直接影响你的学习热情。
网页被抓取下来,通常就是str 字符串类型的对象,要从里面寻找信息,最直接的想法就是直接通过字符串的 find 方法和切片操作:
ChatGPT 虽然很能“聊”,但它并了解你的产品啊。就好比你把郭德纲喊来做你的客服,他也并不会比一个经过培训的客服人员做得更好。
或许在很多人的直观印象中,变量是一个容器;给变量赋值,就像是往一个存储的容器中填入一个数据;再次赋值就是把容器中的数据换掉。
大家都知道最近AI是非常的火,哪怕你不关心科技圈的新闻,也一定不止一次看到ChatGPT、AI画画之类的内容。
我在Python教学的过程中发现:几乎所有的编程学习者在开始用函数不久之后,都踩过局部变量的坑。几乎每个星期,都会有人在答疑群问到关于作用域使用不当而导致的问题。(前两天我在知识星球里刚回答了一个)
Pycharm 作为一款针对 Python 的编辑器,配置简单、功能强大、使用起来省时省心,对初学者友好,这也是为什么编程教室一直推荐新手使用 Pycharm 的原因。
课程教学内容大约 50 个学时,所用版本为 Python 3。除课程内容外,还需要通过练习来巩固所学的编程知识。对于新手,建议先按照课程列表依次学习,至少完成前八章,掌握 Python 的编程基础。
ChatGPT是OpenAI开发的一种自然语言处理工具。它基于Transformer架构,是一种预训练语言模型,已经在多种语言和任务中被训练过。它可以生成文本,回答问题,对话,摘要,翻译等。
玩家的选择通过input输入获取,电脑的选择我们可以用random随机数模块来产生
没用之前,看网上直接吹爆,什么“可以自己写代码、debug”,“制定了毁灭人类的计划”。于是赶紧去试了下。
虽然剧中说是“C语言期中考试”,但这位同学的代码名叫 draw2.py,一个典型的 Python 文件,再结合截图中的 pen.forward、pen.setpos 等方法来看,应该是用 turtle 海龟作图库来画爱心。
Python 自带一个叫做 IDLE 的工具,作为刚上手的开发工具已经可以用了。但 IDLE 功能比较简陋,等你入门之后,建议使用其他 IDE(集成开发环境),推荐 PyCharm 或 VSCode,好用且免费,功能强大问题少。PS:如果你是专业程序员,也可以考虑直接用文本编辑器写代码,然后在命令行运行。文本编辑器推荐 SublimeText。
所谓 pythonic,我觉得包含两方面:一是代码的风格符合 Python 的特点,能合理使用 Python 的“语法糖”;二是代码简洁优美,稳定性高,可读性好,便于维护和修改。所谓“Python 之禅”并不仅限于 Python,很多理念是编程普适的。
先,大家最关心的问题就是:我该学什么语言?这个问题一向没有标准答案。各种技术社区里吵了很多年,并将继续争论下去。对此,我的建议是:学好一门语言。
虽然咱们这儿大多数同学都已经有了一些编程基础,但考虑到有刚加入的新同学,偶尔还是要说一点基础向的内容。今天 Crossin 就跟大家说一说 Python 中的数学运算。
如果你也像我一样,因为过不了关而不爽,不如自己用 Python 来写一个简单版,想过几关过几关
如果之前已经有质因数,最后剩下的 i 就是最后一个质因数;如果没有,说明原数就是质数
另外,这次我专门在自己母校拍了个视频,也算做个小宣传。但因为没经验、没设备,所以拍得比较业余,有人表示根本看不下去图片。纠结了一番我决定还是发出来。我经常跟同学说,你开始写代码不知道怎么写太正常不过了,谁不都是从小白过来的。
这些逻辑关系、推导过程与程序中的逻辑结构息息相关。如果你对此不能保持思路清晰,写出的代码很可能与预期有出入,或是在一些特殊情况下存在漏洞。
关于分解质因数:每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数。分解质因数只针对合数。
你小时候有没有玩过这样一种玩具:一块硬纸,一面画着一只鸟,一面画着一个笼子。硬纸下粘上一根细棒。用手来回转动细棒,让硬纸的两面快速交替出现,就会看见鸟被关在了笼子里。
不过如果你有兴趣的话,可以进一步考虑一下你所用方法的算法复杂度是多少,看看谁的方法更简单。
学编程难免遇到问题,遇到问题就需要上网求助。然而有过不少同学向我诉苦,说在网上提问没有人回答,有的还收到一些不是很友好的回复。我自己也在经常上的论坛上目睹过类似的帖子。以至于有人说,程序员社区就是对新人不友好,不愿帮助新人,甚至说这是怕别人学会了来抢饭碗。
如果输出固定长度对你来说太简单了,可以增加一个输入 n(n为正整数且 n>3),作为输出三角形第一行星号的数量。
“码上行动”是 Crossin的编程教室 经过8年积累后推出的 Python 入门课程+教学服务,目的是为了让编程初学者,尤其是自学者,更快地找到正确的学习方向,提高编程水平。
最近在和学员的沟通中,发现不少初学者面临这样一个问题:了解了一些基本的语法,看得懂书上的示例,但是面临一个新的编程问题时,依然感到无从下手。
在实际的探月过程中,这些操作都是由程序精确测量和控制的。而在这个游戏里,则需要玩家手动完成 降落 和 上升对接 这两个操作。
用 score_you 表示你的得分,score_com 表示电脑得分。开始都为0,每进一球就加1。
但往前几年,其实还有另一个非常火的体感游戏设备,就是 xbox 上的 kinect。和 switch 用带有传感器的手柄来识别玩家动作不同,kinect 使用的是一组摄像头,通过图像来识别玩家的动作。
两年前,我曾经用python写过一个病毒传播的模拟器,用一个简化的数学模型来演示病毒的传播,并用模拟实验解释了为什么做好个人防护、减少出行和对感染者集中隔离可以有效阻断病毒的传播。
另外还有个叫做 pgzero 的游戏开发库,里面有一个可以播放音符的方法。
游戏引擎用的是 Python 的一个游戏库:pgzero。它是对 pygame 的一个封装,让你不需要写多余的套路代码,只要配置游戏的内容逻辑即可。
不同操作系统都有非常多的系统命令,本文只说说最最简单的,让你有一个基本的了解。
在课程一开始,我推荐了大家使用 python 自带的IDE -- IDLE。因为你不需要再做更多的安装和配置,就可以用它来写 python 程序。虽然方便,但从长远来看,它不是一个很好的解决方案,随着你的能力提升迟早会要抛弃它。
每种语言都会有它的支持者和反对者。去网上搜索一下“为什么学 python”,你会得到很多结果,诸如应用范围广泛、开源、社区活跃、丰富的库、跨平台等等等等,也可能找到不少对它的批评,格式死板、效率低、国内用的人很少之类。不过这些优缺点的权衡都是程序员们的烦恼。