文章目录
-
- Python 练习1
- Python 练习2
- Python 练习3
- Python 练习4
- Python 练习5
- Python 练习6
- Python 练习7
- Python 练习8
- Python 练习9
- Python 练习10
- Python 练习11
- Python 练习12
- Python 练习13
- Python 练习14
- Python 练习15
- Python 练习16
- Python 练习17
- Python 练习18
- Python 练习19
- Python 练习20
- Python 练习21
- Python 练习22
- Python 练习23
- Python 练习24
- Python 练习25
- Python 练习26
- Python 练习27
- Python 练习28
- Python 练习29
- Python 练习30
- Python 练习31
- Python 练习32
- Python 练习33
- Python 练习34
- Python 练习35
- Python 练习36
- Python 练习37
- Python 练习38
- Python 练习39
- Python 练习40
- Python 练习41
- Python 练习42
Python 练习1
有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
def test1():
count = 1
for i in range(1,5) :
for j in range(1,5):
for k in range(1,5):
if i!=j and i !=k and j!=k:
count +=1
print(i,j,k)
print('总共有%d'%(count))
Python 练习2
企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
程序分析:请利用数轴来分界,定位。
def test2():
arr = [1000000,600000,400000,200000,100000]
rat = [0.01,0.015,0.03,0.05,0.075,0.1]
I = int(input('输入当月利润I:'))
for i in range(0,6):
if(I > arr[i]):
sum = (I-arr[i])*rat[i]
print(sum)
break
Python 练习3
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
def test3():
# 通过数学的方法推导出
'''
x + 100 = n^2
x + 268 = m^2
得出 i*j = 168 (m+n = i, m-n = j )(i,j 至少有一个是偶数)
m = (i+j)/2, n = (i-j)/2
得出 i,j 都是偶数
'''
for i in range(1,85):
j = 168/i
if i>j and (i+j)%2 ==0 and (i-j)%2 ==0:
m,n = (i+j)/2,(i-j)/2
x = n*n-100
print('这个整数可能是:%d'%x)
Python 练习4
题目:输入某年某月某日,判断这一天是这一年的第几天?
程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天:
def test4():
year = int(raw_input('year:'))
month = int(raw_input('month:'))
day = int(raw_input('day:'))
sum = 0 # 最后返回的天数
# 记录天数
months = (0,31,59,90,120,151,181,212,243,273,304,334)
if 0 < month <=12:
sum += months[month-1]
else:
print("data is error")
sum += day
leap = 0
if year%400==0 or ((year % 4 ==0) and (year %100 !=0)):
leap = 1 # 闰年需要加1
if leap == 1 and month>2:
sum += 1
print('%d/%d/%d是%d的第%d天'%(year,month,day,year,sum))
Python 练习5
输入三个整数x,y,z,请把这三个数由小到大输出
def test5():
x = int(input('输入x的值:'))
y = int(input('输入y的值:'))
z = int(input('输入z的值:'))
if x < y:
x,y = y,x
if x < z:
x,z=z,x
if(y < z):
y,z=z,y
print('x,y,z的值从小到大为',z,y,x)
def test5():
list = []
for i in range(3):
num = int(input('Inter:'))
list.append(num)
list.sort()
print(list)
Python 练习6
题目:将一个列表的数据复制到另一个列表中。
程序分析:使用列表[:]
def test7():
a = [1,2,3]
b = a[:]
print(b)
Python 练习7
题目:输出 9*9 乘法口诀表。
程序分析:分行与列考虑,共9行9列,i控制行,j控制列
def test8():
for i in range(1,10) :
print()
for j in range(1,i+1):
print("%d*%d=%d "%(i,j,i*j),end='')
Python 练习8
题目:暂停一秒输出。
程序分析:使用 time 模块的 sleep() 函数
import time
def test9():
myD = {
1:'a',2:'b',3:'c'}
for key,value in dict.items(myD):
print(key,value)
time.sleep(1)
Python 练习9
题目:暂停一秒输出,并格式化当前时间
def test10():
while(True):
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())