Python学习日记02

Day.02

2020.02.20
今天继续通过视频网课、牛客网python3教程以及骆昊的一百天学成python的GitHub项目这三个途径进行学习。
在这里分享一下我的学习资料,大家可以作为参考,一起进步。
牛客网python3教程
骆昊的百天python项目
至于视频网课是北风网的人工智能教程,需要的可以向我要。
主要学到了以下内容:

1.运算符

和变量类型一样,python之中也存在着大量运算符可供我们使用。主要可分为:①算术运算符;②赋值运算符;③比较运算符;④逻辑运算符;⑤位运算符。

其中,算术运算符和C++作为对比,python独有的是幂运算符**(在C++中需要导入cmath并通过特殊库函数进行幂运算)和取整除运算符//(在C++中int型除法默认取整),其他的运算符用法均和C++一样。
同样的,赋值运算符和C++相比也多了幂等**=和取整除等//=(个人喜欢这么叫,比如+=念做加等)。

比较运算符和C++一模一样,在这里不过多阐述,因为我原先有过C的基础,所以很好理解。

虽然C++中也有位运算和逻辑运算,但是因为是在大一学的,对于这两者的区别并没有太大概念,现在回想起来,平时写程序时输入的&&、||、!都是逻辑与、逻辑或和逻辑非的运算符。在大三上学期学习了单片机原理之后,通过使用汇编语言编程,可以说是彻彻底底加深了对位运算的理解(因为汇编语言大多是十六进制运算)。python中逻辑运算符和C++的主要区别是:python中用的逻辑与或非运算符分别是and、or、not,相对于C++来说,有更强的可读性。

在python中,位运算符和C++一致,在这里不过多阐述,需要用到时可以查阅参考资料。

下面我通过编写四个练习题加深了对python运算符的理解:

#练习题1:分别使用加法、减法、乘法和除法编写四个表达式,使用print语句输出结果
#要求:使用变量接收输入的数字用于计算
#具体实现方法:
print('请输入num1的值:')
num1 = input()
n1 = int(num1) #强制类型转换,使用input()从键盘读取的数默认为字符串,这里为了计算需要转换为int型
print('请输入num2的值:')
num2 = input()
n2 = int(num2)
result1 = n1 + n2
result2 = n1 - n2
result3 = n1 * n2
result4 = n1 / n2
print('num1+num2=', result1)
print('num1-num2=', result2)
print('num1*num2=', result3)
print('num1/num2=', result4)
#测试结果:
#请输入num1的值:
#10
#请输入num2的值:
#20
#num1+num2=30
#num1-num2=-10
#num1*num2=200
#num1/num2=0.5

小结:在通过编写运算符练习题1的程序时,还是会明显感觉到和C++之间的区别。比如,C++会把变量的声明放在最前,如:int x,y,然后通过cin>>x>>y,读取键盘输入的数据,即可进行表达式的计算。而python中因为省略了声明变量类型这一步骤,因此默认键盘读入的是字符串,需要通过一个强制类型转换的函数,把读入的字符串转换成数字类型,再进行计算即可。

#练习题2:华氏温度转换为摄氏温度
#提示:华氏度转摄氏度:摄氏度=(华氏度-32)*5/9
#摄氏度转华氏度:华氏度=摄氏度/1.8+32
#具体实现方法:
print('华氏度摄氏度转换')
var = 1
while var == 1:
    print('华氏转摄氏请输入0,摄氏转华氏请输入1,输入其他数退出')
    a = input()
    b = int(a)
    if b == 0:
        print('请输入华氏度:')
        hua = input()
        huashi = int(hua)
        sheshi = (huashi-32)*5/9
        print('%d华氏度=%d摄氏度'%(huashi, sheshi)) #用%.2f输出会更精确
    elif b == 1:
        print('请输入摄氏度:')
        she = input()
        sheshi = int(she)
        huashi = sheshi/1.8+32
        print('%d摄氏度=%d华氏度'%(sheshi, huashi))
    else:
        break
#测试结果:
#华氏度摄氏度转换
#华氏转摄氏请输入0,摄氏转华氏请输入1,输入其他数退出
#0
#请输入华氏度:
#1
#1华氏度=-17摄氏度
#华氏转摄氏请输入0,摄氏转华氏请输入1,输入其他数退出
#1
#请输入摄氏度:
#1
#1摄氏度=32华氏度
#华氏转摄氏请输入0,摄氏转华氏请输入1,输入其他数退出
#2

#Process finished with exit code 0

小结:首先通过华氏摄氏度的转换,进一步熟悉了python运算符的用法,其次,为了使程序更加趋于完美,查阅了条件语句和循环语句的具体用法,虽然大致和C++相同,但是还是都有着各自略微不同的地方(如:C++中的else if在python中为elif),下次学习的时候还需注意。

#练习题3:输入圆的半径计算周长和面积
#具体实现方法:
print('计算圆周长、圆面积')
while(1):
    print('请输入圆的半径:')
    pi = 3.1415926
    ban = input()
    banjing = float(ban)
    zhouchang = 2*pi*banjing
    mianji = pi*banjing**2
    print('其半径对应的圆周长为:%.2f,对应的圆面积为:%.2f'%(zhouchang, mianji))
#测试结果:
#计算圆周长、圆面积
#请输入圆的半径:
#1
#其半径对应的圆周长为:6.28,对应的圆面积为:3.14
#请输入圆的半径:

#Process finished with exit code -1
#该程序没有设置按键退出,需要自行中止(PyCharm中按Ctrl+F2)

小结:进一步巩固了运算符的使用,其中幂运算符**在涉及次方的运算中非常方便。

#练习题4:输入年份判断是不是闰年
#提示:闰年判断方法:年份为4的倍数但不是100的倍数即为闰年
#具体实现方法:
while(1):
    print('请输入年份:')
    year1 = input()
    year = int(year1)
    if year%4 == 0 and year%100 != 0:
        print('%s是闰年'%year1)
    else:
        print('%s不是闰年'%year1)
#测试结果:
#请输入年份:
#2000
#2000不是闰年
#请输入年份:
#2004
#2004是闰年
#请输入年份:
#2008
#2008是闰年
#请输入年份:
#2012
#2012是闰年
#请输入年份:
#2016
#2016是闰年
#请输入年份:
#2020
#2020是闰年
#请输入年份:
#2019
#2019不是闰年
#请输入年份:

#Process finished with exit code -1

小结:同样的,该程序没有设置按键退出的功能,需要自行在调试模块结束。通过练习,我更加熟练地运用了变量的格式化输出以及if else语句和while语句的编写(来自2020.03.07号的吐槽:闰年的判断条件还少了一个)。

2.今日总结

今天主要学习的内容是运算符,虽然比较简单,但是真正通过具体实例的练习,编写的速度还是很慢,归结起来我认为主要有以下几个原因:①大一系统性学习过C++之后已经很少写代码了,因为我的本科专业是电子科学与技术,学的专业课靠近硬件和通信方面;②虽然C++和python大体相似,但还是存在略微差别,每每运用的时候还需要查参考资料,还不够熟练;③条件语句和循环语句因为还没有学习,今天只是为了程序更加完善而运用了一点皮毛,今后还要更加努力。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值