练习1:给出一个月份,判断该月是什么季节
#用户输入月份
month = int(input('输入月份:'))
#判断季节
if month in [3,4,5]:
print('春季')
elif month in [6,7,8]:
print('夏季')
elif month in [9,10,11]:
print('秋季')
elif month in [12,1,2]:
print('冬季')
else:
print('请输入正确值')
练习2:格式化输出
names = ['fentiao','fendai','fensi','fenpi'] ,输出:I have fentiao, fendai, fensi and fenpi.
names = ['fentiao','fendai','fensi','fenpi']
方法一:
print('I have ' + ','.join(names[:-1])+ ' and ' + names[-1])
方法二:
for i in range(4):
if i == 0:
print('I have %s,' %names[i],end='')
elif i == 1:
print('%s,' %names[i],end='')
elif i == 2:
print('%s and ' %names[i],end='')
else:
print('%s.' %names[i])
练习3:给出年月日:YYYY-MM-DD,判断为该年的第几天
# 用户输入指定格式的日期
date = input('输入日期(格式为YYYY-MM-DD):')
# 将年月日分离
date1 = date.split('-')
year = int(date1[0])
month = int(date1[1])
day = int(date1[2])
# 定义计数器
num = 0
# 判断第几天
li = [31,28,31,30,31,30,31,31,30,31,30,31]
if ((year%4 == 0 and year%100!=0)or year%400 == 0):
li[1] = 29
for i in range(12):
if month > i + 1:
num += li[i]
else:
num += day
break
print('这是%d年的第%d天' %(year,num))
练习4:用户管理
1.系统里面有多个用户,用户的信息目前保存在列表里面 users = ['root','westos'] ,passwds = ['123','456']
2.用户登陆(判断用户登陆是否成功;判断用户是否存在,如果存在判断用户密码是否正确,如果正确,登陆成功,退出循环;如果密码不正确,重新登陆,总共有三次机会登陆;如果用户不存在,重新登陆,总共有三次机会)
users = ['root', 'westos']
passwds = ['123', '456']
trycount = 0
while trycount < 3:
inuser = input('用户名:')
inpasswd = input('密码:')
trycount += 1
if inuser in users:
index = users.index(inuser)
passwd = passwds[index]
if inpasswd == passwd:
print('%s用户登录成功' %inuser)
break
else:
print('%s登录失败:密码错误' %inuser)
else:
print('%s用户不存在' %inuser)
else:
print('登录超过3次,请稍后...')
练习5:会员信息管理
1. 后台管理员 admin 密码:admin
2. 管理员才能看到会员信息
3. 会员信息包含(添加会员信息、删除会员信息、查看会员信息、退出)
users = ['root', 'westos']
passwds = ['123', '456']
inuser = input('用户名:')
inpasswd = input('密码:')
if (inuser == 'admin' and inpasswd == 'admin'):
print('%s用户登录成功' %inuser)
print('会员管理'.center(50,'*'))
while True:
print("""
1.添加会员信息
2.删除会员信息
3.查看会员信息
4.退出
""")
inadmin = input('请输入动作:')
if inadmin == '1':
print('添加会员信息'.center(50,'*'))
adduser = input('输入添加的用户名:')
if adduser in users:
print('%s用户已存在' %adduser)
continue
else:
addpasswd = input('输入用户密码:')
users.append(adduser)
passwds.append(addpasswd)
print('%s会员用户添加成功' %adduser)
elif inadmin == '2':
print('删除会员信息'.center(50,'*'))
deluser = input('请输入删除的会员用户名:')
if deluser in users:
index = users.index(deluser)
delpasswd = passwds[index]
users.remove(deluser)
passwds.remove(delpasswd)
print('%s会员用户已删除' %deluser)
else:
print('%s会员用户不存在' %deluser)
elif inadmin == '3':
print('查看会员信息'.center(50,'*'))
print('\t用户名\t密码')
userCount = len(users)
for i in range(userCount):
print('\t%s\t%s' %(users[i],passwds[i]))
elif inadmin == '4':
exit()
else:
print('请输入正确的动作')
else:
print('%s用户登录失败')
练习6:菲波纳契数列
li = [1,1]
tmp,num = 1,1
rep = 20
for i in range(rep -2):
tmp,num = num, tmp+num
li.append(num)
print(li)
练习7:明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性他先用计算机生成了N个1~1000之间的随机整数(N<=1000),N是用户输入的,对于其中重复的数字,只保留一个,把其余相同的数字去掉,不同的数对应着不同的学生的学号,然后再把这些数从小到大排序,按照排好的顺序去找同学做调查,请你协助明明完成“去重”与排序工作
import random
s = set([])
for i in range(int(input('N:'))):
s.add(random.randint(1,1000))
print(s)
print(sorted(s))