练习目标:掌握函数的定义和调用
import math def isprime(n): if n == 0: return False elif n == 1: return True else: for i in range (2,int(math.sqrt(n)+1)): if n%i == 0: return False return True a = [] for i in range(2,100): if isprime(i): a.append(i) print(a)
执行结果:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
2.编写函数接受一个字符串,分别统计大写字母,小写字母、数字其他字符的个数,以元组的形式返回结果
练习目标:掌握函数的定义和调用
def stringutil(): str = "本次实验主要学习了Linux下的一些常用命令以及vi0编辑器的2实用,对于一个Linux的2系统管理员,掌握这些2命令的使用是非常重要的,因为这些命令不仅可以让系统管理员了解到系统的运行情况,还可以了解到磁盘及内存的占用情况,以便系统管理员根据情况作出相应调整。Linux下的这些命令功能都很强大,每个命令都有许多参数,学习起来有一定的难度,所以要学好这些命令的使用,还必需多练习。" word_list = {'upper':0,'lower':0,'number':0,'other':0} for s in str: if s>='A' and s<='Z' : word_list['upper']+=1 elif s>='a' and s<='z' : word_list['lower']+=1 elif s>='0' and s<='9' : word_list['number']+=1 else: word_list['other']+=1 return word_list list1 = stringutil() print(list1)
执行结果:
{'lower': 14, 'other': 170, 'number': 4, 'upper': 3}
3.在Python程序中,局部变量会隐藏同名的全局变量码?验证。
练习目标:了解变量的作用域
#定义学生人数为3000 STUDENT_NUMBER = 30000 #学校名称 SCHOOL_NAME = 'HeBei University Of Economic & Bussiness' """\ 获取全局变量:学生人数STUDENT_NUMBER的值 """ def getStudentNumber(): return STUDENT_NUMBER """\ 重置全局变量:学生人数STUDENT_NUMBER值 """ def setStudentNumber(num): global STUDENT_NUMBER STUDENT_NUMBER = num """\ 获取全局变量:学校名称SCHOOL_NAME的值 """ def getSchoolName(): return SCHOOL_NAME """\ 重置全局变量:学校名称SCHOOL_NAME值 """ def setSchoolName(name): global SCHOOL_NAME SCHOOL_NAME = name def changeValue(): name = '河北经贸大学' number = 10000 print('全局变量STUDENT_NUMBER = ' , getStudentNumber()) print('全局变量SCHOOL_NAME = ' , getSchoolName()) print('=================================') print('局部变量namber = ' , number) print('局部变量name = ' , name) print('=================================') print('改变全局变量值...') print('=================================') setStudentNumber(number) setSchoolName(name) print('全局变量STUDENT_NUMBER = ' , getStudentNumber()) print('全局变量SCHOOL_NAME = ' , getSchoolName()) if __name__ == '__main__': changeValue()
执行结果:
全局变量STUDENT_NUMBER = 30000
全局变量SCHOOL_NAME = HeBei University Of Economic & Bussiness
=================================
局部变量namber = 10000
局部变量name = 河北经贸大学
=================================
改变全局变量值...
=================================
全局变量STUDENT_NUMBER = 10000
全局变量SCHOOL_NAME = 河北经贸大学
4.使用lambda表达式定义函数,计算三个整数的平方和并且一个参数默认是5。
练习目标:掌握lambda表达式和默认值参数
f = lambda x,y : x*x + y*y + 5*5 a = f(1,2) print(a)执行结果: 30