任务一: 格式化书输出老师的介绍信息
任务描述
定义变量保存姓名,职位,公司地址,按照如下格式输出
name = 'xiaoming' position = '讲师' address = '北京海淀区' print('--------------------------------------------------') print("姓名:%s"%name) print("职位:%s"%position) print("公司地址:%s"%address) print('--------------------------------------------------')
任务二: 用户登录和注册简单模拟实现
任务描述
实现简单用户管理功能,有登录和注册两个功能, 固定注册新用户时用户名不能和admin重名,密码不能小于6位
print('--------------------------------------------------')
print("欢迎使用用户管理系统")
print("1. 注册新用户")
print("2. 登录")
print('--------------------------------------------------')
name = ''
pwd = ''
flag = 'y'
while flag == 'y':
num = int(input('请选择菜单:'))
if num==1:
name = input('请输入用户名:')
if name =='admin':
print('用户名已经被占用!请重新操作 ')
continue
pwd = input('请输入密码 :')
if len(pwd)<6:
print('密码不能小于六位')
print('')
elif num==2:
print('***********登陆系统**********')
name1 = input('请输入用户名:')
pwd1 = input('请输入密码:')
if name ==name1 and pwd == pwd1:
print('登录成功!!!')
break
else:
print('输入有误 !')
continue
flag = input('是否继续(y/n)')
print('谢谢使用!')
任务三: 翻转字符串
任务描述
面试题:给定一个字符串aStr,请翻转字符串
aStr= 'abcdef' print(aStr[::-1])
练习6
任务一: 计算梯形的面积
任务描述
请用户输入梯形上下变成和行高,使用函数的形式实现计算梯形面积.
提示:梯形面积=(上边长+下边长)*高度/2
def tixing(a,b,h):
return (a+b)*h/2
a = int(input('请输入上边长:'))
b = int(input('请输入下边长:'))
h = int(input('请输入高度:'))
jieguo = tixing(a,b,h)
print((a+b)*h/2)
练习7
任务一: 数组练习
任务描述
有一个数列:8,4,2,1,23,344,12
循环输出数列的值
求数列中所有数值的和
猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数
list1 = [8, 4, 2, 1, 23, 344, 12]
sum = 0
for x in list1:
print('数字的值:', x)
sum += x
print('和:%d' % sum)
num = int(input('请输入你要查找的数字:'))
if list1.count(num) == 0:
print('数字不存在!')
else:
print('存在')
任务三: 数组保存一组成绩
任务描述
循环录入5位学员成绩,进行升序排列后输出结果
arrScore =[]
i = 1
while i<= 3:
s = float(input('请录入第%d个人的成绩:'%i))
i += 1
arrScore.append(s)
# 排序
arrScore.sort()
print(arrScore)
任务四: 判断登录用户是否存在
任务描述
有一个数据列表保存了多个用户信息
users=[['tom1','123'],['tom2','123'],['tom3','123']]
users=[['tom1','123'],['tom2','123'],['tom3','123']]
flag = False #标记变量
name = input('请输入用户名')
pwd = input('请输入用密码')
for u in users:
if name==u[0] and pwd==u[1]:
flag= True
break
if flag:
print('登录成功')
else:
print('用户名或密码错误')
练习9
输入文件名实现文件备份
任务描述
讲D盘下某个txt文件,备份到 F盘下,新文件名叫 **-backup.tx
# 输入文件名 oldFileName = input("请输入要拷文件的文件名字:") # 以读的方式打开文件 oldFile = open(oldFileName,'rb') # 提取文件的后缀 fileFlagNum = oldFileName.rfind('.') if fileFlagNum > 0: fileFlag = oldFileName[fileFlagNum:] # 组织新的文件名字 newFileName = oldFileName[:fileFlagNum] + '-bakcup' + fileFlag # 创建新文件 newFile = open(newFileName, 'wb') # 把旧文件中的数据,一行行复制到新文件中 for lineContent in oldFile.readlines(): newFile.write(lineContent) # 关闭文件 oldFile.close() newFile.close()
数据刷选
任务描述
有一个record.txt的文档,内容如下:
# name, age, score
tom, 12, 86
Lee, 15, 99
Lucy, 11, 58
Joseph, 19, 56
第一栏为姓名(name),第二栏为年纪(age),第三栏为得分(score)
现在,写一个Python程序,
1)读取文件
2)打印如下结果:
得分低于60的人都有谁?
谁的名字以L开头?
所有人的总分是多少?
3)姓名的首字母需要大写,该record.txt是否符合此要求? 如何纠正错误的地方?
#coding=utf-8 namelist = [] agelist = [] scorelist= [] dk = open('test.txt','r') #打开目标文件 lines = dk.readlines() #读取整个文件,''lines'是'list'类型, print type(lines[1]) #而'lines[1]'则是'str'类型 print print '________________________' print i = 0 for i in range(len(lines)): if not lines[i].startswith('#') and len(lines[i]) != 1: line = lines[i].strip(' ').split(', ') namelist.append(line[0]) agelist.append(line[1]) scorelist.append(line[2]) print namelist pprint agelist print scorelist print print '__________________________' print acount = [] for name in namelist: if name.find('L')==0: acount.append(name) print 'Whose name start swith "L":',acount print print '__________________________'
print zuhe = [] rejected = [] for j in range(len(line)+1): zuhe = [namelist[j],agelist[j],scorelist[j]] j = j+1 if int(zuhe[2]) < 60: rejected.append(zuhe[0]) print 'Whose score is below 60 :',rejected print print '__________________________' print s = 0 k = 0 for k in range(len(line)+1): s = s + int(scorelist[k]) k = k + 1 print 'The totle score is :',s print print '__________________________' print Namelist = [] for i in range(len(namelist)): if namelist[i].capitalize() == namelist[i] : Namelist.append(namelist[i]) else : Namelist.append(namelist[i].capitalize()) i = i + 1 print Namelist raw_input()