python函数定义和调用练习_Python函数的定义和调用

今天没事写写小程序,正好最近自学Python(看的是Learning Python 4th Edition),于是自己定义并实现了一个Python的小函数。最好的学习方式就是动手操作,感觉比看书强很多倍。这个函数是实现下面这个问题。这个问题来自Cracking the coding interview 4th edition。

Q: Write a function to determine the number of bits required to convert integer A to integer B.

Input: 31, 14

Output: 2

A:

def foo(a,b):

c=a^b

count=1

if c==0:

return 0

else:

while 1:

c=c&(c-1)

if c>0:

count=count+1

else:

return count

s=foo(31,32)

print(s)

红色部分是Python脚本。它用关键字def定义了一个foo函数。这个函数有两个参数,返回一个整数值。然后打印出来。

有意思的是,Python里面用缩进,而不是大括号来区分scope。while if else后面都有冒号。print变成了函数,这是Python 3和Python2不同的地方。

这个函数实现的功能就是判断两个整数有多少位不一样。思路就是首先把两个数a和b进行异或,得到c。不一样的位就是1,相同的位就是0。再判断c有多少位是1。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值