Python基础实战练习

001两数之和

num1 = 1 
num2 = 2 
def sum_of_number(num1,num2):
	return num1 + num2
sum = sum_of_number(num1, num2)
print(f'{num1} + {num2} = {sum}')

002数字的阶乘

num = 5
def factorial_of_num(num):
	result = 1
	while num > 0 
	result *= num
	num-=1
result = factorial_of_num(num)
print(f'result is {result}') #120

# 此外还可以使用math模块下的fact函数求阶乘

003求圆的面积

# pi的值需要导入math函数库,语法为import math
import math
r = 4
def area_of_circle(r):
	return math.pi * r *r
area = area_of_circle(r)
print(f'The area of ciucle is {area}')

004区间里所有的素数

# 该题主要涉及要一个判断是否是素数的问题
# 通过遍历元素中的数是否能被传输的需要判断的数能否整除来判断是否是素数
# 能被整除的话就不是,否则就是,返回True
begin = 11
end = 13
def get_prime_number(begin, end):
	for item in range(begin, end+1)
		if is_prime(itme)
		print('item is prim')
		return item

def is_prime(num):
	if num in (1,2,3):
		 return True
	for indexin in (4,num):
		if num % index == 0:
			return Flase
	return True
print(get_prime_number(begin,end))	

# 还可以使用埃氏筛法
# 当然埃氏筛法使用到生成器的知识点。

005求前N个数字的平方和

# **表示乘方,如2**3 =8
# 同时注意代码格式
num = 10
def square_of_number(num):
	result = 1
	for item in (1, num+1):
		result += item ** 2
	return result
print(f'the square of {num} is',square_of_number(num))

# 或许也可以使用推导式

006列表中数字的和

lista= [2,3,4,5,6,7,8,9]
def sum_of_list(list):
	total= 0
	for item in list:
		total += item
	return total
print(f'this sum of list {lista} is',sum_of_list(lista))
# py中有现成的方法sum来统计列表中所有数字的和
print(f'this sum of list {lista} is',sum(lista))

# 也可以使用reduce函数进行累加,
# def reduce(lista,add):
#	pass

# def add(a,b):
# 	return a+b

007计算数字范围内所有的偶数

```python
# 该题与上面那个素数的题类似
# 首先定义一个函数判断该数是不是偶数
# 是的话再相加起来 使用for遍历in范围的数字
begin = 11
end 23
def is_even(num):
	if num % 2 ==0:
		return True
	elif return Flase
def count_even_number(begin, end):
	result = []
	for item in range(begin, end)	
		if is_even(item):
			#print(f'this number {item} is even')
			result.append(item)
	return result	
print(f'even of {begin} and {end} is ',count_even_number(begin, end))

008移除列表中多个元素

# 列表中移除数组中的元素
# 列表中提供了in来判断元素是否存在与列表
# 列表提供了remove来移除列表中的元素
lista = [1,2,3,4,5]
listb = [3,2,1]
def remove_list_item(lista, listb):
	for item in listb:
		if item in lista:
			lista.remove(item)
	return lista
print(f'{lista} remove {listb} element',remove_list_item)

009列表元素去重

# 最简单的方法还是使用set
# 一般的思想是初始化一个新的数组,不断遍历老数组
#老数组中的数是否在这个新数组中出现过,没有的话就加入,有的话就跳过
list = [1,2,2,2,3,3,4,4,4]
def remove_repeatable_ele(list)
	result = [] # 定义一个空数组,存放没有重复的元素
	for item in list:
		if item not in list:
			result.append(item)
	return result
print(f'数组去重{lista}之后为', remove_repeatable_ele(lista))
# 使用集合 先调用set() 再调用list让它变成列表
print(f'数组去重{lista}之后为', list(set(lista)))

010对简单列表元素排序

# 简单列表是指不包含符合元素的列表
list = [1,2,2,3,4,5]
def sort_array(list)
	list.sort() # 不是原地操作,而是改变了list的值
	return list
result = sort_array(list)
print(f'这个list{list}已经被改变',list) 

list1 = [1,2,2,3,4,5]
def sort_array_sorted(list1)
	listb = []
	listb.sorted(list1) #默认是顺序排序
	listc = sorted(list1, reverse=True) #逆序排序
print(f'lista is {list1}') #原始列表
print(f'lista is {listb}') #顺序排序列表
print(f'listc is {listc}') #逆序排序列表