[Python]小甲鱼Python视频第026课(字典:当索引不好用时2)课后题及参考解答

# -*- coding: utf-8 -*-
"""
Created on Fri Mar  8 10:32:20 2019@author: Administrator
""""""测试题:0. Python的字典是否支持一键(Key)多值(Value)?不支持1. 在字典中,如果试图为一个不存在的键(Key)赋值会怎样?字典对象中会出现一个新的键值对2. 成员资格操作符(in和not in)可以检查一个元素是否存在序列中,当然也可以用来检查一个键(Key)是否存在字典中,那么请问哪种的检查效率更高些?为什么?检查一个键(Key)是否存在字典中的效率更高,通过查找hash值一步到位,不需要迭代或遍历3. Python对键(Key)和值(Value)有没有类型限制?对Value并没有啥限制Key必须是能hash的对象(序列类型就不行)4. 请目测下边代码执行后,字典dict1的内容是什么?
>>> dict1.fromkeys((1, 2, 3), ('one', 'two', 'three')) 
>>> dict1.fromkeys((1, 3), '数字'){1:'数字',3:'数字'
}5. 如果你需要将字典dict1 = {1: 'one', 2: 'two', 3: 'three'}拷贝到dict2,你应该怎么做?"""#测试题5dict1 = {1: 'one', 2: 'two', 3: 'three'};
dict2 = dict1;
dict3 = dict1.copy();#动动手0,程序有点问题,没有检查input的输入能否为空
dict_user_password = dict({'0':'0'}); 
string1 = """|--- 新建用户:N/n ---|
|--- 登录账号:E/e ---|
|--- 退出程序:Q/q ---|
|--- 请输入指令代码:
""";
def ShowAndGetCmd():global string1;print(string1);return input();def add_user():global dict_user_passwordwhile True:name = input('请输入用户名:');if name in dict_user_password.keys():print('此用户已经被占用,请重新输入:')continueelse:break;password = input('请输入密码:')dict_user_password[name] = passwordprint('注册成功')def login_user():global dict_user_passwordwhile True:name = input('请输入用户名:')if name in dict_user_password.keys():break;else:print('用户名不存在,请重新输入:')continuepassword = input('请输入密码');if password == dict_user_password.get(name):print('密码正确');else:print('密码错误');while True:input_cmd = ShowAndGetCmd()if input_cmd == 'N' or input_cmd == 'n':add_user();elif input_cmd == 'E' or input_cmd == 'e':login_user();elif input_cmd == 'Q' or input_cmd == 'q':break ;else:print('指令输入有误!')

  

转载于:https://www.cnblogs.com/alimy/p/10502968.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/449710.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2021-08-12 画蜡烛线

画蜡烛线 pip install https://github.com/matplotlib/mpl_finance/archive/master.zip from mpl_finance import candlestick_ochl import matplotlib.pyplot as plt from matplotlib.pylab import date2num# 先画日K线 fig, axes plt.subplots(nrows1, ncols1, figsize(20, …

替换字符串列表中字符串

//替换字符串列表中字符串 procedure StringsReplace(var S : TStrings; OldPattern, NewPattern: string; Flags: TReplaceFlags);var i : integer; tmpstr : string;begin for i : 0 to S.Count -1 do begin tmpstr : S[i]; s[i] : StringReplace(tmpstr, Ol…

TCP/IP协议族 详解(TCP/IP四层模型、OSI七层模型)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 TCP/IP协议族(TCP/IP Protocol Suite,或TCP/IP Protocols),简称TCP/IP。由于在网络通讯协…

RGB 24和YUY2相互转换

YUY2经常用于电视制式以及许多摄像头的输出格式.而我们在处理时经常需要将其转化为RGB进行处理,这里简单介绍下YUY2(YUV)与RGB之间相互转化的关系: http://msdn2.microsoft.com/en-us/library/ms893078.aspx YUY2(YUV) To RGB: C Y - 16 D U - 128 E V - 128 R clip((…

通达信获取数据

#python第三方库pytdx获取 from pytdx.hq import TdxHq_API api TdxHq_API() # 数据获取接口一般返回list结构,如果需要转化为pandas Dataframe接口,可以使用 api.to_df 进行转化 with api.connect(119.147.212.81, 7709): # 返回普通list data …

ICMP (互联网控制消息协议 )是什么

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 互联网控制消息协议(英语:Internet Control Message Protocol,缩写:ICMP)是互…

股票数据相关性分析

导入相关包 import pandas as pd import numpy as np import matplotlib.pyplot as plt from matplotlib.collections import LineCollection import akshare as ak from sklearn import cluster, covariance, manifold %matplotlib inline #Jupyter Notebook显示图形专用 plt…

分享一个辅助分析内存泄漏的脚本

最近给系统做了一点优化,前几天去查看系统监控,想看看上线前后cpu使用率曲线变化情况。查看的时候意外发现上线前后内存占用相差不少,20%以上。 本来我没怎么在意这个问题,因为我们系统会在运行过程中缓存部分数据内容。但客户觉得…

windows Virtualbox下配置Ubuntu,且用ssh连接

1、软件介绍 1)virtualbox 5.2.22 2)Ubuntu 18.04 3)git bash 2、virtualbox设置 安装完Ubuntu后点击该镜像的设置,依次点击“网络”——“端口转发” 将主机端口设置为一个闲置端口,子系统端口也就是Ubuntu端口设置…

专访刘伟:软件开发人员的内功修炼之道

摘要:数学修养对软件开发之路起着什么作用?码农如何修炼自己的内功并成长为优秀的软件开发员?带着相关思考,社区之星第10期采访了中南大学副教授——刘伟。他对数学修养、设计模式、软件架构和重构方面的独特见解,相信…

多线程数据下载(akshare)

import akshare as ak import pandas as pd from multiprocessing.dummy import Pool as ThreadPool import datetime import timedef get_hs300_stock_codes():获取沪深300股票代码列表:return:hs300ak.index_stock_cons_sina("000300")codeshs300[code]codescodes.…

MongoDB 4.6.1 c++ driver 编译

版权声明:本文为博主原创文章,未经博主同意不得转载。https://blog.csdn.net/sheismylife/article/details/25512251 这个版本号已经和之前不一样了。有专门的github的项目。https://github.com/mongodb/mongo-cxx-driver首先获取源码:git cl…

地址解析协议 (ARP) 是什么

地址解析协议 (ARP) 是通过解析网路层地址来找寻数据链路层地址的一个在网络协议包中极其重要的网络传输协议。 ARP是通过网络地址(例:IPv4)来定位MAC地址 (也称为乙太地址)。 ARP已经在很多网路层和数据链接层之间得以实现,包括IPv4,Chaosn…

04.React事件 方法、 React定义方法的几种方式 获取数据 改变数据 执行方法传值...

2019独角兽企业重金招聘Python工程师标准>>> 一.基本用法 在以类继承的方式定义的组件中,为了能方便地调用当前组件的其他成员方法或属性(如:this.state),通常需要将事件处理函数运行时的 this 指向当前组件…

代码之美——Doom3源代码赏析

摘要:Dyad作者、资深C工程师Shawn McGrathz在空闲时翻看了Doom3的源代码,发出了这样的惊叹:“这是我见过的最整洁、最优美的代码!”“Doom 3的源代码让我对那些优秀的程序员刮目相看。”因此有了本文。 背景介绍: Doom…

UDP:用户数据报协议 是什么

用户数据报协议(英语:User Datagram Protocol,缩写为UDP),又称用户数据报文协议,是一个简单的面向数据报的传输层协议,正式规范为RFC 768。在TCP/IP模型中,UDP为网络层以上和应用层以…

随想录(程序员和收入)

距离上一次写博客已经很长时间了,大约过了三个星期。这三个星期发生了很多事情,这中间也有我自己的思考积累,也有工作上的变故。总之,自己想了很多,也得到了很多。每到这个时候,毕业生朋友们都在寻找工作&a…

iOS进阶之正则表达式

最近一直在弄正则表达式,于是在这里整理一下,便于日后查阅。 1、常用符号 ^:字符串的开始$:字符串的结束*:表示零个或若干个?:表示零个或一个:表示一个或若干个| :表示 或 操作. &a…

akshare分析涨停板股票数据

导入包,获取日期数据 import pandas as pd import numpy as np import akshare as ak #画图 import matplotlib.pyplot as plt #正确显示中文和负号 plt.rcParams[font.sans-serif][SimHei] plt.rcParams[axes.unicode_minus]False #处理时间 from dateutil.parser…

DNS(域名系统) 是什么

域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。 它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。 DNS使用TCP和UDP端口53。当前,对于每一级域…