Python3学习笔记-字典及列表练习

一、字典练习_注册校验

需求点说明:

   1、用字典存储已有用户名、密码

  2、判断输入用户名、密码、确认密码不能为空:strip()

  3、用户名不能重复:key in dirc

  4、两次密码应输入一致

  5、错误3次提示错误次数过多:for, else

user = {
    ‘fengfeng‘:‘123456‘,
    ‘fangfang‘:‘456788‘
}
for i in range(3):
    username = input(‘请输入用户名‘).strip()
    passwd = input(‘请输入密码‘).strip()
    cpasswd = input(‘请再次输入密码‘).strip()
    if username in user:  #字典里面用in来判断的话,只是判断key是否存在
        print(‘用户名已被注册‘)
    elif passwd != cpasswd:
        print(‘两次输入密码不一致‘)
    elif username == ‘‘or passwd == ‘‘ or cpasswd == ‘‘:
        print(‘用户名或密码不能为空‘)
    else:
        print(‘恭喜,注册成功!‘)
        user[username]=passwd  #字典插入新的数据
        break
else:
    print(‘错误次数过多‘)
print(user)

二、列表练习

1、校验用户名是否合法

需求点说明:

   1、输入账号 #input

   2、如果账号存在的,提示已经被注册,如果不存在的,就让他注册 #列表比对all_users [],count()

   3、不能为空 #strip()

   4、用户名长度长度6-12之间 len()

   5、最多输入3次 #循环

all_users = [‘fengfeng‘,‘fangfang‘,‘xiaofeng‘]
for i in range(3):
    user = input(‘请输入用户名:‘).strip()
    if len(user) >5 and len(user) <13:
        if all_users.count(user) > 0:
            print(‘用户名已被注册‘)
        else:
            print(‘用户名可用,赶紧注册吧‘)
            break
    else:
        print(‘用户名长度需要在6-12位之间‘)
else:
    print(‘失败次数过多‘)

1、二维列表取值

需求点说明:将已交作业和未交作业的同学分组,并打印

stus=[
      [‘小明‘,‘未交‘],[‘小青‘,‘已交‘],
      [‘小白‘,‘已交‘], [‘小紫‘,‘已交‘],
      [‘小红‘,‘未交‘], [‘小绿‘,‘未交‘],
      [‘小黄‘,‘未交‘], [‘小黑‘,‘已交‘]
    ]
pass_list=[]  # 所有已经交作业的同学
fail_list=[]  # 没有交作业的同学
for stu in stus:
    status = stu[1]
    name = stu[0]
    if status ==‘未交‘:
        fail_list.append(name)
    else:
        pass_list.append(name)
print(‘已交作业同学是 :%s,总共有 %s 个人‘%(pass_list,len(pass_list)))
print(‘未交作业同学是 :%s,总共有 %s 个人‘%(fail_list,len(fail_list)))

原文地址:https://www.cnblogs.com/fenggf/p/9058580.html

时间: 2024-11-05 08:50:44

Python3学习笔记-字典及列表练习的相关文章

Python学习笔记&lt;二&gt;:列表、元组、字典

1 列表和元组 可以将列表和元组当成普通的"数组",它能保存任意数量任意类型的Python 对象.和数组一样,通过从0 开始的数字索引访问元素,但是列表和元组可以存储不同类型的对象. 列表和元组有几处重要的区别.列表元素用中括号( [ ])包裹,元素的个数及元素的值可以改变.元组元素用小括号(( ))包裹,不可以更改(尽管他们的内容可以).元组可以看成是只读的列表.通过切片运算( [ ] 和 [ : ] )可以得到子集,这一点与字符串的使用方法一样. 举例如下: >>>

HTML&CSS基础学习笔记13—无序列表

无序列表 有时我们的工作繁忙,杂事很多,怕忘记,就会把事情一件件列出来,防止忘记. 它们的排列顺序对于我们来说并不重要,可以随意调换,我们将它称为无序列表,HTML里用<ul>标签来表示无序列表,列表里的项目则用<li>标签来表示: 1 2 3 4 5 <ul>     <li></li>     <li></li>     ... </ul> 看一段实例代码: 对于的浏览器显示结果是这样的: 更多内容学习,请

python学习笔记3:列表和元组

python学习笔记3:列表和元组 一.列表 list 总结:列表是可变变量,可以通过下标修改元素的值 1.定义列表 -- 中括号[ ] name=['Lily','Lucy','meimei'] 2.下标取值 --正负数均可 3.在列表中添加值 1)append() 方法,在列表末尾添加一个值 2)insert()方法,在列表指定位置添加一个值 3)extend()方法,把一个列表追加到一个列表的末尾            4.从列表中删除值 1)pop() 方法,默认删除最后一个元素,并且返

day5_python学习笔记_chapter6_字符串列表元组

1. 序列:seq[n], seq[x:y], seq * n序列重复n次,切片, 序列翻转 s="abcde", s[::-1]="edcba" 内建函数:1. 类型转换: list(iter), str(obj), unicode(obj), tuple(iter) , 2. len(seq), max(), min() , reversed(), sorted(), sum(), 2. 字符串: in ,not in ,,, import string , s

《python基础教程(第二版)》学习笔记 字典(第4章)

<python基础教程(第二版)>学习笔记 字典(第4章)创建字典:d={'key1':'value1','key2':'value2'}lst=[('key1','value1'),('key2','value2')]; d=dict(lst)d=dict(key1='value1', key2='value2')字典基本操作:d={'key1':'value1','key2':'value2'}; len(d) ==> 2 #字典中的键值对数量d={'key1':'value1','

Vue学习笔记进阶篇——列表过渡及其他

本文为转载,原文:Vue学习笔记进阶篇--列表过渡及其他本文将介绍Vue中的列表过渡,动态过渡, 以及可复用过渡是实现. 列表过渡 目前为止,关于过渡我们已经讲到: 单个节点 同一时间渲染多个节点中的一个 那么怎么同时渲染整个列表,比如使用 v-for ?在这种场景中,使用 <transition-group>组件.在我们深入例子之前,先了解关于这个组件的几个特点: 不同于 <transition>, 它会以一个真实元素呈现:默认为一个<span>.你也可以通过 tag

HTML&CSS基础学习笔记14—有序列表及列表嵌套

我们上篇讲到了无序列表,那么今天就来看看有序列表和他们的组合嵌套使用吧. 有序列表 现在我们要做那堆杂事了,但是发现这么多杂事,先做哪个好呢?于是我们给这堆杂事弄个优先级排序,让我们能够按照顺序做下去.HTML里用<ol>标签来表示有序列表,<ol>标签的列表项依然是用<li>标签表示. 它的代码模板是这样的: <span style="font-family:Microsoft YaHei;"><ol>       <

Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

Python3学习笔记(urllib模块的使用) 1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None) -         url:  需要打开的网址 -         data:Post提交的数据 -         timeout:设置网站的访问超时时间 直接用urllib.request模块的urlopen()

KVM虚拟化学习笔记系列文章列表(转)

Kernel-based Virtual Machine KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51cto.com/703525/1288795kvm虚拟化学习笔记(二)之linuxkvm虚拟机安装http://koumm.blog.51cto.com/703525/1289627kvm虚拟化学习笔记(三)之windowskvm虚拟机安装h

python3学习笔记(1)

#python学习笔记 17/07/07# !/usr/bin/evn python3# -*- coding:utf-8 -*- #r"" 引号当中的字符串不转义 #练习#打印 '\\\t\n'print(r'\\\t\n') #打印 n = 123print('n = 123') # 打印 f = 456.789print("f = 456.789") #打印 s1 = 'Hello, world!'print("s1 = 'Hello, world!