【以下功能都使用函数封装】
提示: 涉及到要返回的题目,请使用return
基础题
1.封装函数,计算从1到某个数以内所有奇数的和并返回
方法一:
def fn(num):
return(for i in range(1,num+1,2))
方法二:
def fn():
num = int(input("请输入一个数字:"))
sum = 0
for i in range(1,num+1,2):
sum += i
return sum
nn = fn()
print(nn)
2.封装函数,判断某个数是否是偶数,返回结果(True或False)
def test(num):
return num % 2==0
print(test(11))
3.封装函数,交换某两个变量的值, 并返回结果
def fn(a,b):
return b,a
print(demo(12,34))
4,封装函数,将某个字符串中的大写字母转换为小写,小写字母转换为大写,将新的字符串返回【参数设置为默认参数】
swapcase()
def fn(n="dffASDffA"): # 任意定义一个字符串
return n.swapcase()
print(fn())
进阶题
1.封装函数,比较某两个数的大小,返回较大的一个
def get_max(a,b):
return max(a,b)
print(get_max(98,34)
2.封装函数,判断某个数是否是素数,返回结果(True或False)
def fn2(num):
for i in range(2,num):
if num % i==0:
return False
return True
3.封装函数,计算2-100之间素数的个数,返回结果
老师的办法:引用上面数据
def fn3():
count=0 # 定义变量count,保存素数的个数
for i in range(2,101):
if fn2(i):
count+=1
return count
print(fn3)
自己的办法
def fn():
count = 0
for n in range(2, 101):
for i in range(2, n):
if n % i == 0:
break
else:
count += 1
return count
print(fn())
挑战题(选做)
1,封装函数,实现如下要求
例如:输入2,5,则求 2+22+222+2222+22222的和
def fun1(a, n):
pass
def fun1(a,n):
sum=0 # 定义变量记录最终的数字和
temp=0 # 定义一个临时变量,专门用来保存生成的临时数字
for i in range(n):
temp = temp*10+a
print(temp)
sum+=temp
return sum
he=fun1(3,4)
print(he)
2,已知千锋邮箱的用户名只能由数字字母下划线组成,域名为 **@1000phone.com,
封装函数 is_legal_email,判断一个字符串是否是千锋邮箱,是返回True,不是返回False。
提示:先找出所有False的情况
最后剩下的情况就是True
def is_legal_email(email):
list1 = email.split("@")
print(list1)
if len(list1) != 2:
return False
if list1[1] != "1000phone.com":
return False
for i in list1[0]:
if i.isalnum() or i == "_":
continue
else:
return False
return True
bool=is_legal_email("mail_@1000phone.com")
print(bool)