第一题:公约数个数
从这题开始,就要采用一些稍微高一点点的技术,比如运用函数 def
a,b = 24,36
def gcd(a,b):
count = 0
for i in range(1,min(a,b)+1):#公约数必须从1开始,到a本身结束,所以+1
if a % i == 0 and b % i == 0:
count = count+1#公约数加一
return count
print(gcd(a,b))
第二题:单身情歌(可跳过)
不难看出,这是一道子串问题,在C语言里要一个一个字符去匹配,工程量比较大,在python里直接用in就可以了,非常的人性化
a = "OurWorldIsFullOfLOVE"
b = a.lower()
if "love" in str(b):#python在这一点上是十分只能了,换成C语言的话,这问题就成了求子串的问题,难
#度多多了
print("LOVE")
else:
print("SINGLE")
补充一下:lambda的用法(可跳过)
lambda a : a*n #lambda可接受任意数量的参数,但只能有一个表达式。有一点像java抽象类里函数的实现?
第三题:信息加密
名字一听就感觉和ASCII码有关,果然
#a = "asda"
#b = 3测试数据
a1=''
def convert(a,b):
if (ord(a)+b)<=122:#z的ASCII码到122为止,ord是把字符变成码()数值,chr是把码(数值)变成字符
return chr(ord(a)+b)
else:
return chr((ord(a)+b)%122+96)#%122,让他变到范围以内在加上96从a开始
for x in a:
a1 += convert(x,b)#python可以用+=来连接字符串
print (a1)
今天先记录三题,分别代表了函数,子串,ASCII码,以后复习这三个知识点就可以看这里了