原创 Python的练习01

2019-5-6 15:50 2891 23 9 分类: 软件与OS

软件现在书写能力越来越下降了,我现在已经理解不了大学毕业的时候写的IP电话的程序代码的意思,再加上钟爱的BCB破产而永久性失去支持,VS越来越庞大,现在都没有安装文件,只能从网站上选择要安装的内容再自动下载安装,装完以后十几个G,操作习惯以及大量的函数库都已经超出我现在习惯于几K字节的单片机程序的大脑。

所以,学习Python吧,就算是学不出来啥,总也能在论坛里吹吹牛吧。

Python不是很新的语言,但是又比较新,是一种解释型的语言,简单的学习过程中,感觉相比较C/C++那种非常精准的语言架构,Python特别的灵活自由。除了取消了括号,依靠缩进来管理循环这一条不喜欢以外,别的算是很惊艳。

Python的打印是print,而不是printf,是需要习惯一下;而且其循环后面需要加“:”,一开始是不太习惯的。

Python能灵活到什么程度?数组都能随意增减!这在C语言中是不可想象的。我们以前的做法是,设计好一个数据结构,然后建立一个数组,需要申请大小,分配内存空间,用完要释放;并且使用的时候要非常的小心,一不小心就会溢出。而Python可以在程序半道上对数组随意增加或者删减、切片、排序……除了不小心也会溢出以外,实在是太灵活了。而且,就算溢出了,也不会出现C/C++里面死机蓝屏的问题,安全许多。

Pythonif或者for循环中作比较的时候,不光可以做数字或者布尔型的比较,还可以做字符串的比较,这也省却了很多赋值的操作,简化了程序。

Python还有着C#VB里面那种对字符串的增减模式,而且更灵活,用Str()就可以把数字之类的全部转换成字符串,用“+”就可以把各种字符连接起来,只要文字模式写对了,就是火星字符都能连接。这也使得Python在输入输出的时候,提示文字非常的灵活。

光说不练假把式,虽然不知道以后怎么用,但是先试试再说,先写了个简单的素数计算的程序,果然是退化了,调试了大半天。

num = 100

a=1

while a

    a=a+1

    b=(int)(a**0.5)       #取开方

    c=1

    count = 0

    while c

        c=c+1

        if a%c == 0:      #如果2~b之见有被a整除的数,余数为0,则表明不是素数

            count = 1

            break

    if count == 0:

        print(str(a)+"是素数")

很简单,就是判断0~num之间有哪些是素数,素数只能被1和自己整除,因此需要判断1~a^0.5(开方)之间没有可以被a整除的数,那么a就是素数。

没过两天,同学群里面恰好有人问707829217是两个素数的乘积,要计算出来,这个号码是一个美女的微信号,嘿嘿,明显是套路,但是这个题目挺好,正好刚写了素数的计算程序,就在此基础上更改了一下。

num = 28000 #707829217开平方

a=1

while a

    a=a+1

    b=(int)(a**0.5)      #取开方,检验a是否是素数

    c=1

    count = 0

    while c

        c=c+1

        if a%c == 0:      #如果2~b之见有被a整除的数,余数为0,则表明不是素数

            count = 1

            break

    if count == 0:

        d = (int)(707829217/a) #ad要同时满足都是整数,且乘积是707829217

        if a*d == 707829217:

            b=(int)(d**0.5) #检验d是否是素数

            count = 0

            c = 1  

            while c

                c=c+1

                if d%c == 0:

                    count = 1

                    break    

            if count == 0: #ad同时是素数时,输出

                print(str(a)+"*"+str(d)+"="+str(a*d))

 

输出结果为:8171*86627=707829217(想加微信的可以去加了)

果然比手算的快多了(有人能手算出来吗?)Python基本语法看的七七八八,下一步就是要试验学习书里面的项目,期待能够做一些更有用好玩的程序出来。

作者: 忆轻狂, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-1384650.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

文章评论8条评论)

登录后参与讨论

用户1724505 2019-6-10 17:48

学习一下!

用户3890041 2019-5-14 12:50

学习了

curton 2019-5-13 16:22

学习

江畔美少年 2019-5-8 22:00

C有点学不动了,先学个Python祭天

测量无处不在 2019-5-7 10:43

说到C/C++的内存管理,确实比较严格。曾经做过一个串口按115.2Kbps的波特率,定时1s一次,不停的接收数据,写文件的程序,可以接收几天,几百兆文件的,用CString的,基本几分钟后程序就死机了,用string的稍微长点,用char的能抗住;还得看硬件的读写速度,存储到一定程度就要抓紧写文件;这个程序看似简单,对长期的稳定性、可靠性要求高,市面上的各种串口助手,基本没有扛得住半小时的。

eyesee00 2019-5-6 18:05

刚学了下,还不知道用来干嘛

忆轻狂 2019-5-6 16:26

dmm8: 大哥你也开始学Python了啊,一直从安装到放弃,留下了忏悔的眼泪
咋了啊,啥事情让你这么心酸,写个文章讲讲呗

dmm8 2019-5-6 16:18

大哥你也开始学Python了啊,一直从安装到放弃,留下了忏悔的眼泪
相关推荐阅读
忆轻狂 2023-09-21 12:01
【拆解】会议摄像头维修
公司买了一个会议摄像头,高清,可以旋转、俯仰、调焦。从第一天开始,一开机就会卡在左边,转不动,一直振动,必须用遥控器home键才能返回初始位置。一直以来以为是设计缺陷,直到3年后,论坛又举办拆解活动的...
忆轻狂 2022-09-08 15:37
猜测华为Mate50聚能泵的实现方式
         mate50发布了,其中有一项比较有意思的技术,叫做应急模式,也就是下图所示的,聚能泵,在1%电量的情况下启动,延长使用时间。 &...
忆轻狂 2022-06-01 13:59
国产操作系统deepin试用2
此前一直在虚拟机下面运行deepin,有点卡,还吃资源,一直想着搞个独立的电脑,正巧同事有台机子烧了主板,大方的把can hai送给我了,于是我就借助闲鱼这个优秀的平台将其修复,安装上了deepin。...
忆轻狂 2021-12-06 16:26
国产操作系统Deepin的试用
由于家中没有空余的电脑,所以只能使用虚拟机运行,虽然速度上会比电脑直接运行差一些,但是分配较大的内存和处理器的资源,也可以实现非常流畅的操作体验。我装了deepin和winXP两个虚拟机,deepin...
忆轻狂 2021-11-01 17:24
超级电容的电量试验
超级电容,到底有多少的能量?前两天论坛里讨论无线充电的发展趋势,我就提到由于超级电容的大电流充电能力,上百A不在话下,那么如果没电了,往插座上一插,瞬间大电流充十几秒,能用几个小时,是否可以?!理论上...
忆轻狂 2021-05-27 13:59
纯电动汽车使用成本和环保性分析介绍
由于中国火力发电仍然是主力军,因此,新能源汽车,尤其是纯电动汽车推广的时候,大家总会质疑其污染性,因为煤炭燃烧会带来较多的污染物。下图是2019年全国发电设备装机容量占比: 下图是2015年...
我要评论
8
23
关闭 站长推荐上一条 /2 下一条