[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.pswp.cn/news/449710.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449710.shtml
英文地址,請注明出處:http://en.pswp.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。當前,對于每一級域…