Python学习日志(三),,运算补充(因为之前看


运算补充(因为之前看书看过的我又忘了...)

python3 里 / 直接是浮点除。python2的 / 是直接整除,取整数部分,小数不要了,python3也可以这样整除,用//实现。

**是乘方!!!3**2=8。这个运算符有点个性啊。

比起左侧的操作符优先级高,比右侧优先级低。看图:

技术分享

第一句**比左侧优先级高,因此先乘方再加负号。

第二句**比右侧优先级低,因此先加负号再乘方。

其实跟我们自己来算是一样的,但是就是想夸一下python,就我学到的知识,光运算和懒逻辑这两点就让我觉得它比我的脑子灵活多了。T^T

python用作计算器真的是棒棒哒,完全符合我们的运算思维,输入时可以不加那么多括号。看~

技术分享

其实真的不需要辣么多括号~

体会循环分支的小程序(判断分数等级)

技术分享

这个程序写的挺快的,运行出来也还行。感觉打通了任督二脉,突然好像知道怎么完善之前猜数字那个程序了...

三元操作符

x if 条件 else y

eg: x,y=4,5

  if x<y:

    small = x

  else:

    small = y

可以改进为:x,y = 4,5

      small = x if x<y else y

assert断言

assert 关键字是用来声明某个条件为真,当assert后面的表达式为假时,系统自动崩溃并抛出一个AssertionError。

在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助。

for循环

for 目标 in 表达式

  循环体

使用for循环让变量 i 遍历字符串:

技术分享

让变量each遍历列表member,这里的len()函数之前学过,返回长度。

技术分享

range

技术分享

技术分享技术分享技术分享

break

break语句用于跳出最近的一级for或while循环。

技术分享

continue

continue语句和break语句有一定的区别。

遇到continue语句,程序会调回最近的for或者while循环的起始,判断是否进行下一次迭代或跳出循环。

技术分享

判断是否是闰年

能被4整除但不能被100整除,或者能被400整除的年份是闰年。

技术分享

输出0-100之间的奇数

技术分享

成员资格运算符

Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,如果在序列中返回 True,否则返回 False。

编写一个程序,求 100~999 之间的所有水仙花数。

如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数。

技术分享

技术分享

三色球问题

有红、黄、蓝三种颜色的求,其中红球 3 个,黄球 3 个,绿球 6 个。先将这 12 个球混合放在一个盒子中,从中任意摸出 8 个球,编程计算摸出球的各种颜色搭配。

技术分享

技术分享

这里green是从2到6,因为红球和黄球加起来只有6颗,因此绿球至少有两颗。虽然在这里green写成range(0,7),结果也是一样,但是写成range(2,7)明显效率高一点。

Python学习日志(三)

评论关闭