python学习日记02

1.反转整数(回文数)

num = int(input('num = '))
reversed_num = 0
while num > 0:
    reversed_num = reversed_num * 10 + num % 10
    num //= 10
print(reversed_num)

分析一下代码:
如果输入的是一个二位数,第一轮循环就是取个位数作为reversed_num,再取十位数作为num,随后在第二轮中reversed_num=个位数*10+十位数,num=0 循环中止。
如果输入的是一个三位数,例如143,第一次循环后,reversed_num=3,也就是个位数,num=14,第二次循环后reversed_num=30+4=34,num=1。第三次循环后,reversed_num=340+1,num=0循环中止。
根据以上两个例子的分析可以看出,背后的逻辑是从个位数开始提取,第一次循环reversed_num=个位数字,num= 除开个位数的剩下数字;第二次reversed_num=十位数字+十倍的个位数字, num=除开个位数和十位数的剩下的数字; 第三次循环reversed_num=百位数字+十倍的十位数字+百倍的个位数字…

2.定义函数

在不确定参数个数的时候,可以使用可变参数:

def add(*args):
    total = 0
    for val in args:
        total += val
    return total

3. 引入模块

一个 Python 源码文件除了可以被直接运行外,还可以作为模块(也就是库)被导入。不管是导入还是直接运行,最顶层的代码都会被运行(Python 用缩进来区分代码层次)。而实际上在导入的时候,有一部分代码我们是不希望被运行的。
if name == ‘main’ 我们简单的理解就是: 如果模块是被直接运行的,则代码块被运行,如果模块是被导入的,则代码块不被运行。
一个简单的例子,const.py:

Pi = 3.14
def main():
	print('Pi =',Pi)
main()

我们在这个文件里边定义了一些常量,然后又写了一个 main 函数来输出定义的常量,最后运行 main 函数就相当于对定义做一遍人工检查,看看值设置的都对不对。然后我们直接执行该文件(python const.py),输出:
PI: 3.14
现在,我们有一个 area.py 文件,用于计算圆的面积,该文件里边需要用到 const.py 文件中的 PI 变量,那么我们从 const.py 中把 PI 变量导入到 area.py 中:

from const import Pi
def cal(radius):
	return Pi*radius**2
def main():
	print('round area is',cal(2))
main()	

运行 area.py,输出结果:
PI: 3.14
round area: 12.56
可以看到,const 中的 main 函数也被运行了,实际上我们是不希望它被运行,提供 main 也只是为了对常量定义进行下测试。这时,if name == ‘main’ 就派上了用场。把 const.py 改一下:

Pi = 3.14
def main():
	print('Pi =',Pi)
if __name__ == '__main__':
	main()

然后再运行 area.py,输出如下:
round area: 12.56
再运行下 const.py,输出如下:
PI: 3.14
这才是我们想要的效果。

以上示例来自于:https://www.cnblogs.com/yaohong/p/8660209.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值