当前位置: 首页 > news >正文

做静态网站步骤/西安发布最新通知

做静态网站步骤,西安发布最新通知,做跨境电商的网站,wordpress sftp练习39 源代码 # create a mapping of state to abbreviation #创建一个州与缩写的映射 states {Oregon:OR,Florida:FL,California: CA, New York: NY,Michigan:MI} #创建一个字典,key为州名,value为州缩写#Create a basic set of states and some cit…

练习39 源代码

# create a mapping of state to abbreviation
#创建一个州与缩写的映射
states = {'Oregon':'OR','Florida':'FL','California': 'CA',
'New York': 'NY','Michigan':'MI'} #创建一个字典,key为州名,value为州缩写#Create a basic set of states and some cities in them
#创造一系列州与其中的一些城市
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'} #创建字典,key为州缩写,value为城市#add some more cities
#增加更多的城市
cities['NY'] = 'New York' #添加cities字典的key为NY,value为New York
cities['OR'] = 'Portland' #添加cities字典的key为OR,value为Portland#print out some cities 打印一些城市
print('-' * 10)
print("NY State has: ",cities['NY']) #通过cities字典的key为NY,打印对应Value
print("OR State has: ",cities['OR']) #同上#print some states 打印一些州
print('-' * 10)
print("Michigan's abbreviation is: ",states['Michigan']) #通过字典states的key'Michigan',打印对应的Value
print("Florida's abbreviation is: ",states['Florida']) #同上#do it by using the state then cities dict
# 通过使用州和城市的字典来打印
print('-' * 10) 
print("Michigan has: ",cities[states['Michigan']]) 
#step1,通过states字典的key 'Michigan'找到对应的value 'MI';step2,'MI'又作为cities字典的key,打印对应的value 'Detroit'。
print("Florida has: ",cities[states['Florida']]) #原理同上# print every state abbreviation 打印每个州的缩写
print('-' * 10)
#items()函数以列表返回可遍历的(键值)元组数组。列表内为元组,元组内包含了字典的key和value
for state,abbrev in list(states.items()): 
#items()函数以列表返回可遍历的(键值)元组数组。列表内为元组,元组内包含了字典的key和valueprint(f"{state} is abbreviated {abbrev}")#print every city in states
print('-' * 10)
#for循环遍历字典,items()将字典转化为字典视图特殊序列
for abbrev, city in list(cities.items()):print(f"{abbrev} has the city {city}")# now do both at the same time 同时打印所以州和城市
print('-' * 10)
#for循环遍历字典,items()将字典转化为字典视图特殊序列
for state, abbrev in list(states.items()):print(f"{state} state is abbreviated {abbrev}")print(f"and has city {cities[abbrev]}")print('-' * 10)# safely get a abbreviation by state that might not be there
#安全的获得一个可能不存在的州的缩写
state = states.get('Texas') #get()函数,获取指定键对应的值,若键不存在,则可自定义输出值,不会报错。if not state:print("Sorry, no Texas.")#get a city with a default value 获得一个城市的默认值
city = cities.get('TX', 'Does Not Exist') #获取不存在的州缩写,并自定义输出元素,且不报错
print(f"The city for the state 'TX' is {city}")

输出结果

----------
NY State has:  New York
OR State has:  Portland
----------
Michigan's abbreviation is:  MI
Florida's abbreviation is:  FL
----------
Michigan has:  Detroit
Florida has:  Jacksonvill
----------
Oregon is abbreviated OR
Florida is abbreviated FL
California is abbreviated CA
New York is abbreviated NY
Michigan is abbreviated MI
----------
CA has the city San Francisco
MI has the city Detroit
FL has the city Jacksonvill
NY has the city New York
OR has the city Portland
----------
Oregon state is abbreviated OR
and has city Portland
Florida state is abbreviated FL
and has city Jacksonvill
California state is abbreviated CA
and has city San Francisco
New York state is abbreviated NY
and has city New York
Michigan state is abbreviated MI
and has city Detroit
----------
Sorry, no Texas.
The city for the state 'TX' is Does Not Exist

知识点:

1.字典是什么?
**作用:**字典是用来把你想要存储的东西映射或关联到一些键(keys),以便你能够获取到它们。可存储任意类型对象。
**格式:**字典的每个键值(key=>value)用冒号分割,每个对之间用逗号分割,整个字典包括在花括号中,格式为:d = {key1 : value1, key2 : value2}。
**规则:**键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

2. 字典和列表的区别
(1)字典不仅可以通过数值查找元素,还可以通过字符串来查找元素。列表只能通过数值查找元素。
(2)字典可以通过字符串往里添加元素,也可以通过字符串或数值来删除元素。而列表只能通过数值来添加和删除元素。

3.字典和列表的应用场景
(1)字典可以用在各种需要通过某个值去查看另一个值的场合。
(2)列表可以用在专供需要有序排列的数据使用的。
(3)字典是键值对的组合,列表是一些项的有序排列。

4.字典的items()函数
返回字典中成对的键和值形成的元组,返回的是一种名叫字典视图的特殊序列,其中每个元素都是一个元组。可以用于 for 来循环遍历;
示例:

cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
#items函数,将字典的key和value作为元组,返回存在dict_items开始的字典视图特殊序列
cities_it = cities.items()
print(cities_it)
#加list函数后,将字典视图特殊序列转化为列表
cities_li = list(cities.items())
print(cities_li)#dict_items可用于for循环遍历字典的键和值
for key, value in cities_it:print(f"the key is {key}, the value is {value}." )#items()和list()函数合用,返回列表,用于for循环
for key, value in cities_li:print (f"the key is {key}, the value is {value}.")

输出结果:

dict_items([('CA', 'San Francisco'), ('MI', 'Detroit'), ('FL', 'Jacksonvill')])
[('CA', 'San Francisco'), ('MI', 'Detroit'), ('FL', 'Jacksonvill')]
the key is CA, the value is San Francisco.
the key is MI, the value is Detroit.
the key is FL, the value is Jacksonvill.
the key is CA, the value is San Francisco.
the key is MI, the value is Detroit.
the key is FL, the value is Jacksonvill.

5.字典get()函数
get()函数用法:在获取键对应的值的时候,使用get()方法可以避免因未找到相应目标而引发异常的情况。
语法:

my.dict.get(key,default)

Key为我们要查询的键,default为未找到时的默认返回值,我们可以进行自定义。
示例:

#dict.get()函数
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
abbrev = cities.get('CA') #获取对应键的值
print(abbrev)#若该键不存在,使用get函数不会报错
abbrev_no = cities.get('NI')
print(abbrev_no)#若该键不存在,可自定义输出内容
#第一种
abbrev_no1 = cities.get('AB')
if not abbrev_no1:print("NO EXIT.")
#第二种
abbrev_no1 = cities.get('AB', "Does not exit the key.")
print(abbrev_no1) 

输出结果:

San Francisco
None
NO EXIT.
Does not exit the key.

附加练习

1.找找 Python 的字典文档,试试多进行一些操作。
python字典常用的函数:clear、get、items、keys、values、pop。
(1)clear()函数
使用clear()方法会清空字典中的所有元素。
示例:

#输入
# dict.clear()函数
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
cities.clear()
print(cities)#输出
{}

(2)get()函数
见知识点。

(3)items()函数
见知识点。

(4)keys()函数
它的使用方式和items使用方法类似,keys返回字典中的键。输出形式字典视图特殊序列。
示例:

#输入
#dict.key()函数
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
print(cities.keys())#输出
dict_keys(['CA', 'MI', 'FL'])

(5)values()函数
vlaues()返回字典中的所有值。输出形式字典视图特殊序列。
示例:

#dict.values()函数
#输入
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
print(cities.values())#输出
dict_values(['San Francisco', 'Detroit', 'Jacksonvill'])

(6)pop()函数
pop()方法会删除指定的键,并返回其值,如果没有找到相应键可输出默认值。
语法:

my_dict.pop(key,default)

Key为我们要删除的键,当没有找到该键的时候会输出default,default可自定义,当没有default时返回的是None。类似get()函数。

示例:

#dict.pop()函数
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
print(cities.pop('CA')) #删除除键'CA'及对应值
print(cities)#删除键对,若键'NI'不存在,输出'NO Exit'
cities_pop = cities.pop("NI","NO Exit")
print(cities_pop)

输出结果:

{'MI': 'Detroit', 'FL': 'Jacksonvill'}
NO Exit

2. 看看你不能用字典做什么。很重要的一点是它们没有次序,试着玩玩看。
值得注意的是,从Python3.6开始,Python中内置的字典是有序的,这里的有序是指输出有序,是按照插入的顺序输出的,而不是指按照key的字母数字顺序。原先字典是无序的。
(1)字典的无序是指,不能人为重新排序,只能通过转化为字典视图特殊序列(类似元组和列表组合)进行排序,字典本身的顺序不会发生改变,但也可以通过排序后的字典视图特殊序列输出键值对。
示例:

#字典排序sorted()函数,及字典的顺序
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}#for循环遍历字典
print("-" * 20)
for key,value in list(cities.items()):print(f"key: {key}, value: {value}")#按照字典的键排序
print("-" * 20)
cities_s1 = sorted(cities.items(), key= lambda x : x[0]) 
print(cities_s1)#按照字典的值排序
print("-" * 20)
cities_s2 = sorted(cities.items(), key= lambda x : x[1]) 
print(cities_s2)#for循环遍历
print("-" * 20)
for key, value in list(cities_s1):print(key,value)

输出结果:

--------------------
key: CA, value: San Francisco
key: MI, value: Detroit
key: FL, value: Jacksonvill
--------------------
[('CA', 'San Francisco'), ('FL', 'Jacksonvill'), ('MI', 'Detroit')]
--------------------
[('MI', 'Detroit'), ('FL', 'Jacksonvill'), ('CA', 'San Francisco')]
--------------------
CA San Francisco
FL Jacksonvill
MI Detroit

(2)由于字典中的元素具有特定的顺序,但没办法直接做到取第N个值。

#输入
cities = {'CA':'San Francisco','MI': 'Detroit',
'FL': 'Jacksonvill'}
print(cities[1])#输出报错
Traceback (most recent call last):File "c:\Users\Desktop\Python3_exercises\text39.py", line 3, in <module>print(cities[1])
KeyError: 1

(3)字典无法按照指定位置添加键值对。默认从尾部添加。

常见问题

  1. 列表和字典有哪些区别? 列表是元素的有序排列。而字典是把一些元素(称为“键”,keys)和另一些元素(称为“值”,values)匹配起来。
  2. 我能用字典做什么? 当你需要用一个东西去查另一个东西的时候。其实,你可以把字典称为“查询表”(look up tables)。
  3. 我能用列表做什么? 可以用于任何有序排列的东西,同时你只需要用数字索引来查找它们。
    4.如果我需要一个字典,但我又想让它们有序排列怎么办呢? 参考常见问题中的sorted()函数。示例可见常见问题2
    sorted()函数:
    语法:
sorted(iterable, key=None,reverse=False)

参数说明:
(1)iterable:代表的是可迭代的对象。
(2) key=None:用来进行比较的元素,具体的值来源于可迭代的对象中。
(3)reverse=False:排序规则,reverse=False升序(默认),reverse=True降序。

5.字典可以转化为列表和元组,列表和元组不能转化为字典。

相关文章:

“笨办法”学Python 3 ——练习 39. 字典,可爱的字典

练习39 源代码 # create a mapping of state to abbreviation #创建一个州与缩写的映射 states {Oregon:OR,Florida:FL,California: CA, New York: NY,Michigan:MI} #创建一个字典&#xff0c;key为州名&#xff0c;value为州缩写#Create a basic set of states and some cit…...

模糊的照片如何修复清晰?

相信有很多人用手机拍照时&#xff0c;觉得拍出来的照片一定是很漂亮的&#xff0c;结果拍了之后&#xff0c;拿出来一看模糊一片&#xff0c;根本看不清是什么。或者是只显示一半另一半模糊一片。而这些精彩瞬间很多时候是无法重拍的。虽然谁也不想拍出的照片出现模糊&#xf…...

如何理解​session、cookie、token的区别与联系?

session、cookie、token。 相信学过接口的朋友都特别熟悉了。 但是对我一个刚接触接口测试的小白来说&#xff0c;属实有点分不清楚。 下文就是我通过查阅各种资料总结出来的一点理解&#xff0c;不准确的地方还请各位指正。 &#xff08;文末送洗浴中心流程指南&#xff09…...

【MyBatis】| MyBatis分页插件PageHelper

目录 一&#xff1a;MyBatis使⽤PageHelper 1. limit分⻚ 2. PageHelper插件 一&#xff1a;MyBatis使⽤PageHelper 1. limit分⻚ &#xff08;1&#xff09;概念&#xff1a; ①页码&#xff1a;pageNum&#xff08;用户会发送请求&#xff0c;携带页码pageNum给服务器&am…...

Java枚举类详解

一、定义格式 public enum s { 枚举项1,枚举项2,枚举项3; } // 定义一个枚举类&#xff0c;用来表示春&#xff0c;夏&#xff0c;秋&#xff0c;冬这四个固定值 public enum Season {SPRING,SUMMER,AUTUMN,WINTER; } 二、枚举的特点 1、所有枚举类都是Enum的子类 2、我们可以通…...

C语言数组

一.数组定义 数组由数据类型相同的一系列元素组成 如 int main(){ float candy[365]; char code[12]; int states[50]; … } cnady是包含了365个float元素的数组。code是包含了12个char类型的数组。states包含了50个int类型的数组。 二.数组初始化和取值 我们使用花括号包含值&…...

Scala 入门(第一章Scala 环境搭建、插件的安装)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 第 1 章 Scala 入门1.1 概述1.1.1 为什么学习 Scala1.1.2 Scala 发展历史1.1.3 Scala 和 Java 关系1.1.4 Scala 语言特点1.2 Scala 环境搭建1.3 Scala 插件安装1.4 HelloWorl…...

math@多项式@求和式乘法@代数学基本定理

文章目录多项式求和式乘法应用代数学基本定理相关证明高次方程其他关于多项式的参考多项式求和式乘法 S∏j1(∑k1ajk)⁣ ⁣ ⁣j∏j1m(∑k1njajk)⁣ ⁣ ⁣jS\prod_{j1}\left(\sum\limits_{k1}a_{jk}\right)_{\!\!\!j} \\\prod_{j1}^{m}\left(\sum\limits_{k1}^{n_j}a_{jk}\r…...

Kafka系列之:基于SCRAM和Ranger机制完成动态新增kafka读写账号、赋予账号对指定Topic的读写权限

Kafka系列之:基于SCRAM和Ranger机制完成动态新增kafka读写账号、赋予账号对指定Topic的读写权限 一、需求背景二、添加写用户三、查看用户是否添加到zookeeper中四、查看用户五、赋予用户topic写权限六、生产者配置文件七、ranger给用户权限八、往Topic写数据九、删除添加的用…...

第五十三章 DFS进阶(一)——剪枝优化

第五十四章 DFS进阶&#xff08;一&#xff09;——剪枝优化一、什么是剪枝&#xff1f;二、剪枝优化的策略1、优化搜索顺序2、排除等效冗余3、可行性剪枝4、最优性剪枝5、记忆化搜索三、例题1、AcWing 165. 小猫爬山&#xff08;DFS 剪枝优化&#xff09;2、AcWing 167. 木棒…...

Java字节码深度知多少?

文章目录1、字节码结构1.1、基本结构1.2、实际观测2、内存表示3、方法调用指令4、invokedynamicEND结语Java真的是长盛不衰&#xff0c;拥有顽强的生命力。其中&#xff0c;字节码机制功不可没。字节码&#xff0c;就像是 Linux 的 ELF。有了它&#xff0c;JVM直接摇身一变&…...

【C++】智能指针(万字详解)

&#x1f308;欢迎来到C专栏~~智能指针 (꒪ꇴ꒪(꒪ꇴ꒪ )&#x1f423;,我是Scort目前状态&#xff1a;大三非科班啃C中&#x1f30d;博客主页&#xff1a;张小姐的猫~江湖背景快上车&#x1f698;&#xff0c;握好方向盘跟我有一起打天下嘞&#xff01;送给自己的一句鸡汤&…...

使用docker配置mysql主从复制

1.新建主服务器容器实例&#xff1a; docker run -p 3307:3306 --name mysql \ -v /docker/mysql/data:/var/lib/mysql \ -v /docker/mysql/conf:/etc/mysql/conf \ -v /docker/mysql/log:/var/log/mysql \ -e MYSQL_ROOT_PASSWORDroot \ -d mysql:5.7 设置容器卷之后&#xf…...

v3 异步组件及分包使用

1 app.vue <template> <!-- vue3异步组件必须使用suspense --> <Suspense> <template #default> <!-- 异步组件 --> <SyncVue></SyncVue> </template> <template v-slot:fallback> <!-- 优先显示骨架屏 --> <…...

实用调试技巧【上篇】

&#x1f534;本文章是在 Visual Studio 2022&#xff08;VS2022&#xff09;编译环境下进行操作讲解 文章目录&#x1f973;1. 什么是bug&#xff1f;&#x1f973;2.调试有多重要&#xff1f;2.1. 我们是如何写代码的&#xff1f;2.2.调试是什么&#xff1f;2.3.调试的基本步…...

JavaScript 教程

手册简介JavaScript 是世界上最流行的脚本语言。 JavaScript 是属于 web 的语言&#xff0c;它适用于 PC、笔记本电脑、平板电脑和移动电话。 JavaScript 被设计为向 HTML 页面增加交互性。 许多 HTML 开发者都不是程序员&#xff0c;但是 JavaScript 却拥有非常简单的语法。几…...

在SpringBoot里面使用原生的Servlet

在SpringBoot里面使用Servlet 首先在主程序中添加注解主程序添加ServletComponentScan // 加上这个注解之后就可以使用原生的组件了 HttpServlet 继承HttpServlet 重写方法 添加WebServlet 第一种方式使用注解 WebServlet(value "/helsk") public class HelloSe…...

商标被驳回,先别慌!挽回商标有办法

商标注册是一个漫长的等待过程&#xff0c;提交了注册申请之后不代表就能得心应手。商标局在接收到申请后&#xff0c;便会开始各阶段审查&#xff0c;面对不符合条件的商标会予以商标驳回。商标局基于什么原因而驳回注册申请呢?驳回后还有必要进行商标驳回复审吗?今天心周企…...

VMware安装Linux虚拟机后忘记root密码处理方法

OS版本&#xff1a;Red Hat 7.7 问题说明&#xff1a; 之前用VMWare安装了一台Linux虚机&#xff0c;由于长期没使用&#xff0c;导致忘记了root密码。所以需要修改root密码。 Root密码修改 现将修改root密码的操作步骤记录如下。 1.启动虚拟机&#xff0c;出现启动倒计时…...

Centos安装OpenResty

文章目录一. OpenResty是什么二. OpenResty的安装1. 安装开发库2. 安装OpenResty仓库3. 安装OpenResty4. 安装opm工具5. 目录结构6. 配置nginx的环境变量7. 启动和运行8. 配置文件修改三. 小案例1. 案例说明2. OpenResty监听请求3. 编写业务代码4. 获取请求参数一. OpenResty是…...

阿里云部署SpringBoot项目

目录 步骤1&#xff1a;购买服务器(新用户免费试用一个月) 步骤2&#xff1a;查看服务器相关信息 ​编辑 步骤3&#xff1a;设置安全组 步骤4&#xff1a;远程连接 步骤5&#xff1a;使用FinalShell连接阿里云服务器 步骤6&#xff1a;阿里云服务器上安装JDK ​编辑 步骤7…...

EdgeCOM嵌入式边缘计算机的参数配置

EdgeCOM嵌入式边缘计算机的参数配置&#xff1a; 下面以 eth0 为例进行命令说明。 在 Linux 系统下&#xff0c;使用 ifconfig 命令可以显示或配置网络设备&#xff0c;使用 ethtool 查询及 设置网卡参数。 设置 IP 地址&#xff0c;查看当前网卡详情&#xff1a; rootfl-imx6u…...

字节软件测试岗:惨不忍睹的三面,幸好做足了准备,月薪15k,拿到offer

我今年25岁&#xff0c;专业是电子信息工程本科&#xff0c;19年年末的时候去面试&#xff0c;统一投了测试的岗位&#xff0c;软件硬件都有&#xff0c;那时候面试的两家公司都是做培训的&#xff0c;当初没啥钱&#xff0c;他们以面试为谎言再推荐去培训这点让我特别难受。 …...

【编程基础之Python】5、安装Python第三方模块

【编程基础之Python】5、安装Python第三方模块安装Python第三方模块为什么需要安装第三方模块Python包管理器介绍pippip installpython -m pip installcondaconda install在Windows环境中安装Python模块安装numpy安装pandas安装matplotlib在Linux环境中安装Python模块在PyCharm…...

JavaScript 教程导读

JavaScript 是 Web 的编程语言。所有现代的 HTML 页面都使用 JavaScript&#xff0c;可以用于改进设计、验证表单、检测浏览器、创建cookies等。JavaScript 非常容易学。本教程将教你学习从初级到高级JavaScript知识。JavaScript 在线实例本教程包含了大量的 JavaScript 实例&a…...

BigDecimal

文章目录1. BigDecimal 的舍入模式&#xff08;RoundingMode&#xff09;1.1 ROUND_UP1.2 ROUND_DOWN1.3 ROUND_HALF_UP1.4 ROUND_HALF_DOWN1.5 ROUND_CEILING1.6 ROUND_FLOOR1.7 ROUND_HALF_EVEN1.8 ROUND_UNNECESSARY2. BigDecimal的运算——加减乘除2.1 加法 add()函数 减法…...

代码随想录【Day15】|102. 二叉树的层序遍历、226. 翻转二叉树、101. 对称二叉树

102. 二叉树的层序遍历 题目链接 题目描述&#xff1a; 给你一个二叉树&#xff0c;请你返回其按 层序遍历 得到的节点值。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 难点&#xff1a; 思路&#xff1a; 需要借用一个辅助数据结构即队列来实现…...

Python学习笔记:快速上手:基础知识

快速上手&#xff1a;基础知识 数和表达式 除法 >>> 1 / 2 0.5 >>> 1 / 1 1.0整除 >>> 1 // 2 0 >>> 1 // 1 1 >>> 5.0 // 2.4 2.0求余&#xff08;求模&#xff09;&#xff1a; x % y 等价于x - ((x // y) * y)。 …...

excel学习笔记-导入外部文件,报错,数值格式变换,日期格式的转化,求和快捷键,冻结窗格

这里写目录标题一、导入外部文件1.导入csv文件2.导入txt文件3.修改txt内容&#xff0c;需要刷新才能看见更改二、报错三、数值格式变换四、日期格式的转化五、ALT &#xff0c;求和快捷键六、冻结窗格一、导入外部文件 1.导入csv文件 2.导入txt文件 3.修改txt内容&#xff0c;…...

06 OpenCV‘阈值处理、自适应处理与ostu方法

1 基本概念 CV2中使用阈值的作用是将灰度图像二值化&#xff0c;即将灰度图像的像素值根据一个设定的阈值分成黑白两部分。阈值处理可以用于图像分割、去除噪声、增强图像对比度等多个领域。例如&#xff0c;在物体检测和跟踪中&#xff0c;可以通过对图像进行阈值处理来提取目…...