三、基础习题

题目:"""统计列表['a','c','c','d','a','d','d','d','e','a']每个元素的的次数,并按照次数大小进行排序,格式如[('a',3),('b',4)]"""

#解法1:

a=['a','c','c','d','a','d','d','d','e','a']
a1=set(a)  #去重
b=[]
c=[]
for i in a1:
    b.append((a.count(i),i))  #把统计次数放在元祖第一个位置是因为后面按出现次数进行排序时,
                              # sort只能按第一个元素进行排序,所以这里把出现次数放在第一个元素
b.sort(reverse=True)

for n in b:
    c.append((n[1],n[0]))
print(c)

#解法2:
a=['a','c','c','d','a','d','d','d','e','a']
a1=set(a)
b=[]
for i in a1:
    b.append((i,a.count(i)))
c=sorted(b,key=lambda x:x[1],reverse=True)  #通过匿名函数将元素出现次数从大到小排序
print(c)
   题目:"""2、冒泡排序"""
 2 a=[8,1,9,6,4,7,3]
 3 for i in a:
 4     for n in range(len(a)-1) :
 5         if a[n]<a[n+1]:
 6             num=a[n+1]
 7             a[n+1]=a[n]
 8             a[n]=num
 9 print(a)
10 
11 
题目:"""3、水仙花数""" 13 for i in range(1,1000): 14 if i<10: 15 print('{}是个位数'.format(i)) 16 elif i>=10 and i<100: 17 a = str(i) 18 a0=a[:1] 19 a1 = a[1:2] 20 if int(a0)**3+int(a1)**3==i: 21 print('{}={}+{}'.format(i,a0+'**'+'3',a1+'**'+'3')) 22 else: 23 a = str(i) 24 a0 = a[:1] 25 a1 = a[1:2] 26 a2 = a[2:3] 27 if int(a0) ** 3 + int(a1) ** 3+int(a2)**3 == i: 28 print('{}={}+{}+{}'.format(i, a0 +'**'+ '3' , a1 +'**'+'3',a2+'**'+'3'))
1 #题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
2 
3 a=[1,2,3,4]
4 c=[]
5 for i in a:
6     for n in a:
7         for m in a:
8             if i!=n and n!=m and i!=m:
9                 print('{}{}{}'.format(i,n,m))
 1 """
 2 模拟网站登录、注册
 3 1.
 4 用户输入
 5 用户名
 6 密码, 尝试登陆。 2.
 7 检查
 8 是否
 9 注册, 如果已经注册,判断密码是否正确。如果没有注册,就去注册。
10 提示: 1.
11 鉴于我们还未学习数据库。所以用户的信息保存到本地的文件当中。每一个用户的信息可以保存到一个字典当中,所有的用户信息保存到一个列表中。 2.
12 把一个字符串转换为列表,可以使用eval这个内置函数。具体用法问“度娘“ 、“谷哥“,或者
13 官方文档。。。。(锻炼下解决问题的能力) 3.
14 用面向对象的思想完成这次作业
15 4.
16 用到的知识点:Python基础语法、函数、异常、面向对象、文件操作等
17 """
18 
19 
20 class Base(object):
21     """基类"""
22     def __init__(self,username,pwd):
23      self.username=username
24      self.password=pwd
25 class Zhuce():
26     def zhuce(self, f, data_list):
27         """注册功能"""
28         print('用户不存在,请先注册!')
29         data = {}
30         a1 = input('请输入注册用户名:')
31         b2 = input('请输入注册密码:')
32         data[a1] = b2
33         data_list.append(data)
34         f.write('{},'.format({a1: b2}))
35 
36 class Login(Base):
37     def login(self,test_file):
38         self.data_list = []
39         self.a = self.username
40         self.b = self.password
41         shili=Zhuce()
42         with open(test_file,'r+') as f:
43             all_text=eval(f.read())
44             if all_text!=None:
45                for t in all_text:
46                    if self.a in t:
47                        if t[self.a]==self.b:
48                            print('登录成功!')
49                        else:
50                            print('密码错误!')
51                else:
52                        shili.zhuce(f,self.data_list)
53                        print('恭喜,注册完成!')
54             else :
55                  shili.zhuce(f,self.data_list)
56                  print('注册成功!')
57 def main():
58     wenjian='D:AUTO_B_UIPython基础data.txt'
59     a=input('请输入用户名:')
60     b=input('请输入密码:')
61     l=Login(a,b)
62     l.login(wenjian)
63 if __name__=='__main__':
64     main()
"""名片管理系统"""

1、封装函数
a={}
b=[]
def caidan():
    print('*'*50)
    print('名片管理系统'.center(28,' '))
    print('【1】新建名片
【2】查询名片
【3】显示全部
【0】退出系统')
    print('*' * 50)

def xinjian():
    a1=input('姓名:')
    a['姓名']=a1
    a2=input('年龄:')
    a['年龄']=a2
    a3=input('号码:')
    a['号码']=a3
    a4=input('邮箱:')
    a['邮箱']=a4
    b.append(a)
def chaxun():
    select=input('请输入想要查的姓名:')
    for i in b:
        if i['姓名']== select:
            print(i)
            break
    else:
        print('没有该用户')

def all_text():
    print(b)

2、运行入口
while True:
    tool.caidan()
    a=input('请输入你想要使用的功能:')
    if a in ['1','2','3']:
        if a=='1':
            tool.xinjian()
        elif a=='2':
            tool.chaxun()
        elif a=='3':
            tool.all_text()
    elif a=='0':
        print('退出系统')
        break
    else:
        print('输入错误,请重新输入!')
原文地址:https://www.cnblogs.com/lz-tester/p/9149170.html