专栏首页35岁开始自学编程闯缸鱼:看懂python如何实现整数加和,再决定是否自学编程

闯缸鱼:看懂python如何实现整数加和,再决定是否自学编程

玩鱼缸的新手都知道有一种鱼叫“闯缸鱼”,皮实好养,帮助新手判断鱼缸环境是否准备好。这篇笔记,最初用来解答一个编程新手的疑问,后来我发现,整理一下也可当做有兴趣自学python 编程朋友们的“闯缸鱼”。

看懂本文,再决定要不要自学 python 编程吧!

想要实现需求与写代码的环境

你想用 python 实现整数加和。这个需求是如何产生的,已经不再重要。你只想知道 python 代码是如何实现这个需求的。

下面我提供 3 种实现方法,并分别称之为:

  • A:路人都会,有点笨拙。
  • B:超级简约,仅一句代码。很好掌握的 python 基础功。
  • C:重复发明轮子。其实也是 python 基础功。

下面的代码及运行结果,是我直接在 xue.cn 网页上敲出来的,它能让零基础编程自学者无需安装任何环境,网页上就能写代码,运行代码。如果你想试试自学 python 编程,博客园站内私信我,或者文章留言找我拿 30 天的时长兑换码。

实现方法A:路人都会,但很笨拙

我直接输入算式,然后回车,就能运行得到结果。简单到令人怀疑:

这是 python 编程吗?!

其实,可以增加一句变量赋值,然后再把保存了加和结果的变量用 print() 打印出来。

直接输入算式,运行得到结果,是简单好用粗暴有效的技能。但为啥说这个方法笨拙呢?试想,当你想要计算 1 到 100 的加法,手动敲入 1 至 100 的整数 …… 想想都好累啊。不是说好学会编程能解放人力嘛?

由此可知:直接运行的方法,仅能适用于计算次数少的算式。

实现方法B:超级简约,仅一句代码

这个方法中sum()range() 是新手必须掌握的基础函数,简单好用。python 自带许多基础函数,功能强大,直接使用即可。

  • 使用range() 来表达 1至100 的整数,其中range(1,101) 包含左侧1,不包含右侧101,所以刚好代表1至100的整数。
  • 使用 sum() 实现加和。

实现方法C:重复发明轮子

如果不使用 sum()range(),代码还能怎么写呢?现在和我一起重复制造轮子,咱们写代码实现内置函数 sum()range()的功能。不难,条件控制语句而已。

# 计算整数 start 到 end 的和,不使用 sum 和 range
start = 1
end = 100
result = 0
while start <= end:
    result += start  
    start += 1
print(result)

其实你可以留意到,我把整数加和的起点和终点,都赋值给变量,这样简单改一下最上面2行赋值语句的值,就可以计算其它整数到整数的加和。

稍微改写一下,把它封装为一个函数,供以后重复使用。——瞧,最重要的基础功,自定义函数,也没那么难。

运算量非常大会怎样?

无论是1到100,还是1到10000,人脑算起来吃力,电脑却很简便快速。不管电脑多么善于快速计算,也总是有时耗。

下面我简单增加几句代码,用来记录代码的运算时间。这里我用到了一个 time 模块,需要 import 导入它。

计算 1 到 100 加和,用了 0.0012 秒。

计算 1 到 10000 加和,用了 0.09 秒。

计算 1 到 1000000 加和,用了 1.3 秒。

嗯,有意思~ 电脑果然就是比人脑在大量运算方面强劲不怠哇!

“闯缸鱼”

玩鱼缸的新手都知道有一种鱼叫“闯缸鱼”,皮实好养,帮助新手判断鱼缸环境是否准备好。这篇笔记,最初用来解答一个编程新手的疑问,后来我发现,整理一下也可当做有兴趣自学python 编程朋友们的“闯缸鱼”。

如果你没学过编程,居然也能有兴趣看完全文,甚至看懂大部分内容,那你就牛逼啦,python 可以考虑学起来,让电脑帮你解放部分重复性劳动吧。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • windows 10 如何设定计划任务自动执行 python 脚本?

    我用 python 写了一些脚本,有一些是爬虫脚本,比如爬取知乎特定话题的热门问题,有一些是定期的统计分析脚本,输出统计结果到文档中。之前我都是手动执行这些脚本...

    刘娟娟PRESSone
  • win10 设定计划任务时提示所指定的账户名称无效,如何解决?

    我想把我的 python 爬虫脚本设定为自动定时执行,我的设备是win10 操作系统,这将用到系统自带的计划任务功能。且我希望不管用户是否登录都要运行该定时任务...

    刘娟娟PRESSone
  • 整理总结 python 中时间日期类数据处理与类型转换(含 pandas)

    我自学 python 编程并付诸实战,迄今三个月。 pandas可能是我最高频使用的库,基于它的易学、实用,我也非常建议朋友们去尝试它。——尤其当你本身不是程序...

    刘娟娟PRESSone
  • 大家的编程故事

    我觉得1万个小时定律真的很对,付出的越多,得到的越多。一定要多敲代码!熟能生巧。不要每次写代码都到网上复制,可以把经典的用例自己总结写个通用的demo,然后去反...

    Crossin先生
  • 用Seurat做RNA Velocity

    If you don't have velocyto's example mouse bone marrow dataset, download with th...

    生信编程日常
  • PCL滤波介绍(1)

    在获取点云数据时 ,由于设备精度,操作者经验环境因素带来的影响,以及电磁波的衍射特性,被测物体表面性质变化和数据拼接配准操作过程的影响,点云数据中讲不可避免的出...

    点云PCL博主
  • Android webview手动校验https证书(by 星空武哥)

    有些时候由于Android系统的bug或者其他的原因,导致我们的webview不能验证通过我们的https证书,最明显的例子就是华为手机mate7升级到Andr...

    砸漏
  • c语言基础学习10_文件操作01

    ============================================================================= ==...

    黑泽君
  • 民营火箭陆续上天,噱头还是突破?

    近日,智能相对论(aixdlun)的一篇《中国民营火箭准备好了吗》被虎嗅、钛媒体、36kr、创业邦等创投媒体相继推荐,引发了网友热议。文章中表示,民营火箭的赛程...

    用户2908108
  • 类器官:肿瘤研究的新高地

    每年肿瘤相关研究的学术论文发表量数以万计,但能真正转化到临床应用的治疗方案却极少。新药研发进入临床试验后,有85%在早期就被证明没有效果,而那些成功通过三期临床...

    用户6317549

扫码关注云+社区

领取腾讯云代金券