美文网首页简友广场想法
计算经济地理 | Python中的字典

计算经济地理 | Python中的字典

作者: 经济地理学笔记 | 来源:发表于2023-11-20 23:37 被阅读0次

计算经济地理学是经济地理学的重要领域,是指应用计算机科学和技术,结合经济地理学理论和方法,运用数字化、模拟和统计等技术手段对空间经济系统进行分析和预测的研究领域。计算经济地理学的主要研究内容包括:构建空间经济模型、空间数据分析、利用各种编程语言和软件进行数据处理和可视化、制定空间规划、开展政策模拟等。计算经济地理学将经济地理学和计算机科学相结合,为经济地理学研究提供了全新的工具和方法,使研究者能够更加深入地探索和理解现实世界中的空间经济问题。

字典(dictionary)是一种可变的数据结构,它可以存储多个键值对(key-value pair),其中每个键(key)是唯一的,每个值(value)可以是任意类型的数据。

一、创建字典

字典用花括号{}表示,键值对之间用逗号,分隔,键和值之间用冒号:分隔。例如,我们可以直接创建一个包含四个城市和它们的人口的字典:

population = {"北京"2154"上海"2418"广州"1530"深圳"1303}

除了直接创建字典,我们还可以通过dict()函数来创建字典,有以下几种方式:

  • 通过关键字参数创建字典,即用等号=将键和值连接,作为参数传入dict()函数。例如,我们可以用关键字参数创建一个包含四个城市和它们的面积的字典:
area = dict(北京=16410, 上海=6340, 广州=7434, 深圳=1991)
area # 输出 {"北京": 16410, "上海": 6340, "广州": 7434, "深圳": 1991}
  • 通过可迭代对象创建字典,即用一个包含多个键值对的列表,元组,集合或其他可迭代对象作为参数传入dict()函数。每个键值对可以是一个包含两个元素的列表,元组,集合或其他可迭代对象,或者是一个长度为2的字符串。例如,我们可以用一个列表创建一个包含四个城市和它们的经纬度的字典:
location = dict([["北京", (39.9116.4)], ["上海", (31.2121.5)], ["广州", (23.1113.3)], ["深圳", (22.5114.1)]])
location # 输出 {"北京": (39.9, 116.4), "上海": (31.2, 121.5), "广州": (23.1, 113.3), "深圳": (22.5, 114.1)}
  • 通过字典推导式创建字典,即用一个类似于列表推导式的表达式,用花括号{}包围,用冒号:分隔键和值,用for循环遍历一个可迭代对象,生成一个新的字典。我们还可以用if语句添加条件过滤。例如,我们可以用一个字典推导式创建一个包含四个城市和它们的首字母的字典:
initial = {city[0]: city for city in ["北京""上海""广州""深圳"]}
initial # 输出 {"北": "北京", "上": "上海", "广": "广州", "深": "深圳"}

注意,如果有重复的键,后面的值会覆盖前面的值,如上例中的"S"。

字典的格式化字符串是一种用于将字典中的键值对插入到字符串中的方法,它用花括号{}包围字典中的键,用百分号%连接字符串和字典,得到一个新的字符串。例如,我们可以用字典的格式化字符串创建一个包含四个城市和它们的人口的字符串:

population = {"北京"2154"上海"2418"广州"1530"深圳"1303}
s = "北京的人口是%(北京)d万,上海的人口是%(上海)d万,广州的人口是%(广州)d万,深圳的人口是%(深圳)d万。" % population
# 输出 "北京的人口是2154万,上海的人口是2418万,广州的人口是1530万,深圳的人口是1303万。"

注意,我们可以用不同的格式符(format specifier)来控制值的类型和格式,如%s表示字符串,%d表示整数,%.2f表示保留两位小数的浮点数等。

二、字典的方法

可以用键来访问字典中的值,如果键不存在,会报错。例如,我们可以获取字典中"北京"和"杭州"的人口:

population["北京"# 输出 2154
population["杭州"# 报错 KeyError: '杭州'

可以用in运算符来检查一个键是否在字典中,返回一个布尔值(True或False)。例如,我们可以检查"杭州"是否在字典中:

"杭州" in population # 输出 False

可以用赋值语句来添加或修改字典中的键值对,如果键已经存在,会覆盖原来的值,如果键不存在,会创建一个新的键值对。例如,我们可以在字典中添加"杭州"的人口,以及修改"深圳"的人口:

population["杭州"] = 981
population["深圳"] = 1350
population # 输出 {"北京": 2154, "上海": 2418, "广州": 1530, "深圳": 1350, "杭州": 981}

可以用del语句来删除字典中的键值对,如果键不存在,会报错。例如,我们可以删除字典中"广州"的键值对:

del population["广州"]
population # 输出 {"北京": 2154, "上海": 2418, "深圳": 1350, "杭州": 981}

可以用clear()方法来清空字典中的所有键值对,得到一个空的字典。例如,我们可以清空字典:

population.clear()
population # 输出 {}

可以用keys()方法来获取字典中的所有键,返回一个可迭代的对象。例如,我们可以获取字典中的所有键:

population.keys() # 输出 dict_keys(["北京", "上海", "深圳", "杭州"])

可以用values()方法来获取字典中的所有值,返回一个可迭代的对象。例如,我们可以获取字典中的所有值:

population.values() # 输出 dict_values([2154, 2418, 1350, 981])

可以用items()方法来获取字典中的所有键值对,返回一个可迭代的对象,其中每个元素是一个元组,包含一个键和一个值。例如,我们可以获取字典中的所有键值对:

population.items() # 输出 dict_items([("北京", 2154), ("上海", 2418), ("深圳", 1350), ("杭州", 981)])

可以用get()方法来获取字典中的某个值,如果键不存在,可以返回一个默认值,而不会报错。例如,我们可以获取字典中"南京"的人口,如果不存在,返回0:

population.get("南京"0# 输出 0

可以用setdefault()方法来获取字典中的某个值,如果键不存在,可以设置一个默认值,并添加到字典中。例如,我们可以获取字典中"南京"的人口,如果不存在,设置为1000,并添加到字典中:

population.setdefault("南京"1000# 输出 1000
population # 输出 {"北京": 2154, "上海": 2418, "深圳": 1350, "杭州": 981, "南京": 1000}

可以用update()方法来更新字典中的键值对,如果键已经存在,会覆盖原来的值,如果键不存在,会创建一个新的键值对。可以用另一个字典或一个可迭代的键值对作为参数。例如,我们可以用一个字典来更新字典中的人口:

population.update({"北京"2200"成都"1652})
population # 输出 {"北京": 2200, "上海": 2418, "深圳": 1350, "杭州": 981, "南京": 1000, "成都": 1652}

可以用pop()方法来删除并返回字典中的某个值,如果键不存在,可以返回一个默认值,或者报错。例如,我们可以删除并获取字典中"上海"的人口,如果不存在,返回0:

population.pop("上海"0# 输出 2418
population # 输出 {"北京": 2200, "深圳": 1350, "杭州": 981, "南京": 1000, "成都": 1652}

可以用popitem()方法来删除并返回字典中的最后一个键值对,如果字典为空,会报错。例如,我们可以删除并获取字典中的最后一个键值对:

population.popitem() # 输出 ("成都", 1652)
population # 输出 {"北京": 2200, "深圳": 1350, "杭州": 981, "南京": 1000}

可以用copy()方法来复制一个字典,得到一个新的字典。例如,我们可以复制字典:

population_copy = population.copy()
population_copy # 输出 {"北京": 2200, "深圳": 1350, "杭州": 981, "南京": 1000}

三、列表、元组与字典之间的转换

可以用list()函数来将一个字典转换为列表,得到一个新的列表,其中包含字典中的所有键。例如,我们可以将字典转换为列表:

list(population) # 输出 ["北京", "深圳", "杭州", "南京"]

可以用tuple()函数来将一个字典转换为元组,得到一个新的元组,其中包含字典中的所有键。例如,我们可以将字典转换为元组:

tuple(population) # 输出 ("北京", "深圳", "杭州", "南京")

可以用dict()函数来将一个列表或元组转换为字典,得到一个新的字典,其中每个元素是一个键值对,或者是一个可迭代的对象,包含两个元素,分别作为键和值。例如,我们可以将一个列表或元组转换为字典:

dict([("北京"2200), ("深圳"1350), ("杭州"981), ("南京"1000)]) # 输出 {"北京": 2200, "深圳": 1350, "杭州": 981, "南京": 1000}
dict((("北京"2200), ("深圳"1350), ("杭州"981), ("南京"1000))) # 输出 {"北京": 2200, "深圳": 1350, "杭州": 981, "南京": 1000}

近期文章

基于Python的计算经济地理学:引论

经济地理学笔记再出发

Python定量城市研究和计算社会科学研究常用库

耦合协调度模型的基本原理与Python实现

TOPSIS—熵权法的基本原理与基于Python实现代码

基于python构建空间权重矩阵

Python空间分析||geopandas安装与基本使用

计算经济地理 || Python中的循环语句

计算经济地理 || Python中的分支结构控制语句

计算经济地理||Python中的数据类型及运算

Python中的标识符与变量

经济地理中的数据类型与描述

更多内容请翻看历史记录

如果觉得有用就“关注、分享、收藏、在看、点赞 ”

本文使用 文章同步助手 同步

相关文章

  • 12.2-字典概念

    字典在Python中的地位排在第一,非常非常重要;Python中许多数据结构、计算机编程 都是基于字典; 1.字典...

  • Python中的匿名函数--lambda与函数式编程

    Python中的匿名函数,称为lambda匿名函数的格式: 比如,计算平方 对字典中的key/value,根据va...

  • Python笔记setdefault用法

    Python字典中setdefault的用法: Python 字典 setdefault() 方法和get()方法...

  • python笔记:字典

    以下内容基于python-v3.6 计算字典的长度 以列表返回一个字典所有的键 以列表返回字典中的所有值 以列表返...

  • 有序字典

    python中的字典 python中默认的字典是无序的,试下下面的代码 collections.OrderedDi...

  • Python中的字典

    Python中的字典就是JavaScript中的对象创建字典 访问字典中的值 使用len()方法获取字典中键值对的...

  • 第六章 字典

    6.2 使用字典 在Python中,字典是一系列键值对,任何Python对象都可用作字典的值Pyhone字典用花括...

  • 每日一课 | 你知道和不知道python字典都在这!!

    【导语】:你是否了解Python字典,以及创建Python字典都有哪些的实际的应用操作,还有如何访问字典中的值等等...

  • 字典的创建及操作方法

    1、字典的特点 字典:是python中的无序的对象集合。字典与列表的区别是:字典中的数据是无序的,而且字典中的元素...

  • Python3.5 笔记——第5章 字典

    Python3.5笔记 第五章 字典 什么是字典 字典是Python中唯一内建的映射类型,字典指定值没有特定的顺序...

网友评论

    本文标题:计算经济地理 | Python中的字典

    本文链接:https://www.haomeiwen.com/subject/qhkbwdtx.html