比较两个数的大小
def pd_max():
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
print(max(num1, num2))
pd_max()
判断是否为闰年
def runnian():
year = int(input("请输入年:"))
if(year%4)==0:
if(year%100)==0:
print("不是闰年")
else:
print("是闰年")
else:
print("不是闰年")
runnian()
定义函数,输入两个数,前者大输出1,后者大输出-1,一样大输出0
def max_min(num1,num2):
if num1>num2:
return 1
elif num1<num2:
return -1
elif num1 == num2:
return 0
print(max_min(num1=10,num2 =20))
定义函数,判断输入的正整数是否为质数
def prime():
num1 = int(input("请输入一个正整数:"))
if num1 < 2:
print("%d不是质数!"%num1)
else:
for i in range(2,num1):
if num1 % i == 0:
print("%d不是质数!"%num1)
break
else:
print("%d是质数!"%num1)
prime()
定义函数 计算斐波那契数列,5个月后有多少只兔子
def fib(n):
if n==1 or n==2:
return 1
return fib(n-1)+fib(n-2)
print(fib(5))
一.将以下功能使用对应的代码表达
str0 = “akhmopwqecm”
1. 获取 m 第一次出现的位置
2. 获取 m 出现的所有位置
3. 获取 eqwpom 的子串 [提取原串反转]
str0 = "akhmopwqecm"
# 1
# print(str0.find("m"))
# 2
# def find_all(str0, s):
# r_list = []
# for r in range(len(str0)):
# if str0[r] == s:
# r_list.append(r)
# print(r_list)
# find_all(str0, 'm')
# 3
# str0 = str0[::-1]
# print(str0[2:8])
二.统计字符串中字母和数字的个数,将总个数返回
比如传递 ‘abcdef$#& 123’ 返回9
str1 = input("请输入一个字符串:")
count = 0
for i in str1:
if i.isdigit():
count += 1
elif i.isalnum():
count += 1
print(count)
三.利用递归完成传入数字n,求出 11 + 22 + 33 + … nn 的和
def fn(x):
if x==1:
return 1
def f(x):
if x==1:
return 1
return x**2
return fn(x-1)+f(x)
n = int(input("请输入值"))
print(fn(n))
四。传递一个列表,将列表中的字典通过冒泡法按照年龄进行升序排列
字典格式固定为 {‘name’: ‘王宝强’, ‘age’: 30}
比如传递 [{‘name’: ‘周杰伦’, ‘age’: 36}, {‘name’: ‘王俊凯’, ‘age’: 18}, {‘name’: ‘张国立’, ‘age’: 52}]
返回 [{‘name’: ‘王俊凯’, ‘age’: 18}, {‘name’: ‘周杰伦’, ‘age’: 36}, {‘name’: ‘张国立’, ‘age’: 52}]
参数data数据格式
data = [{'name': '周杰伦', 'age': 36}, {'name': '王俊凯', 'age': 18}, {'name': '张国立', 'age': 52}]
# key为要排序的键
def bubble_sort(data,key):
length = len(data)
for i in range(len(data) - 1):
for j in range(len(data) - 1):
if (data[j][key] < data[j + 1][key]):
tmp = data[j]
data[j] = data[j + 1]
data[j + 1] = tmp
return data
bubble_sort(data, 'age')
&
names = [{'name': '周杰伦', 'age': 36}, {'name': '王俊凯', 'age': 18}, {'name': '张国立', 'age': 52}]
def bubble_sort(name,key):
length = len(name)
for i in range(len(name)-1):
for j in range(len(name)-1):
if(name[j][key]<name[j+1][key]):
tmp=name[j]
name[j]=name[j+1]
name[j+1]=tmp
return name
bubble_sort(names,"name")
五, 设计一个函数,传入两个代表日期的字符串,如“2018-2-26”、“2017-12-12”,计算两个日期相差多少天
import time
import sys
def dateinput():
date = input('请输入日期: ')
return date
def datetrans(tdate):
spdate = tdate.replace("/","-")
try:
datesec = time.strptime(spdate,'%Y-%m-%d')
except ValueError:
print("%s is not a rightful date!!" % tdate)
sys.exit(1)
return time.mktime(datesec)
def daysdiff(d1,d2):
daysec = 24 * 60 * 60
return int(( d1 - d2 )/daysec)
date1 = dateinput()
date2 = dateinput()
date1sec = datetrans(date1)
date2sec = datetrans(date2)
print("这两天相差: ",daysdiff(date2sec,date1sec))