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


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

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

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

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

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

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

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

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

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

    这是 python 编程吗?!

    image

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

    image

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

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

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

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

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

    image

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

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

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

    image

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

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

    image

    运算量非常大会怎样?

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

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

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

    image

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

    image

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

    image

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

    “闯缸鱼”

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

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

  • 相关阅读:
    二进制插入 牛客网 程序员面试金典 C++ Python java
    二进制小数 牛客网 程序员面试金典 C++ Python
    二叉树中和为某一值的路径 牛客网 程序员面试金典 C++ Python
    Python matplotlib pylab 画张图
    Python matplotlib pylot和pylab的区别
    Ubuntu 16.04 curl 安装 使用
    Ubuntu 16.04 菜单栏 换位置 挪到左边 挪到下边
    Python 模块feedparser安装使用
    Ubuntu 16.04 下 旋转显示器屏幕 竖屏显示
    从 callback 到 promise
  • 原文地址:https://www.cnblogs.com/jjliu/p/11824917.html
Copyright © 2020-2023  润新知