双“for”在列表理解中如何工作?

2024-06-23

因此,有关此问题出现的问题背景,请参阅此link https://stackoverflow.com/questions/48049006/matching-states-and-cities-with-possibly-multiple-words.

正如已接受的答案所建议的那样,我继续使用提供的代码并能够完成我最初想要的。但编一本词典并不是我的最终目标。我使用该字典的最终目标是将其转换为 DataFrame,我能够做到这一点。 这是我所做的:

df = pd.DataFrame(([st, cty] for st, cty in dic.items() for cty in dic[st]), 
                    columns = ["State", "City"])

供您现成参考,dic变量如下:

{'Alabama': ['Auburn',
  'Florence',
  'Jacksonville',
  'Livingston',
  'Montevallo',
  'Troy',
  'Tuscaloosa',
  'Tuskegee'],
 'Alaska': ['Fairbanks'],
 'Arizona': ['Flagstaff', 'Tempe', 'Tucson'],
 'Arkansas': ['Arkadelphia',
  'Conway',
  'Fayetteville',
  'Jonesboro',
  'Magnolia',
  'Monticello',
  'Russellville',
  'Searcy'],
 'California': ['Angwin',
  'Arcata',
  'Berkeley',
  'Chico',
  'Claremont',
  'Cotati',
  'Davis',
  'Irvine',
  'Isla Vista',
  'University Park, Los Angeles',
  'Merced',
  'Orange',
  'Palo Alto',
  'Pomona',
  'Redlands',
  'Riverside',
  'Sacramento',
  'University District, San Bernardino',
  'San Diego',
  'San Luis Obispo',
  'Santa Barbara',
  'Santa Cruz',
  'Turlock',
  'Westwood, Los Angeles',
  'Whittier'],
 'Colorado': ['Alamosa',
  'Boulder',
  'Durango',
  'Fort Collins',
  'Golden',
  'Grand Junction',
  'Greeley',
  'Gunnison',
  'Pueblo, Colorado'],
 'Connecticut': ['Fairfield',
  'Middletown',
  'New Britain',
  'New Haven',
  'New London',
  'Storrs',
  'Willimantic'],
 'Delaware': ['Dover', 'Newark'], .... all the other states with their city names

The output that I got after running the above code is as follows (a screenshot): enter image description here

我的查询是:虽然我得到了所需的输出,并且虽然我制定了“数据帧理解”,可以说,我自己,但我并不完全理解双重for.

有人可以解释一下具体是如何做的吗for在另一个里面for在这种情况下工作。我是熊猫的初学者。


那是一个发电机,与 Pandas 无关。

期限([x, y] for x in q for y in p)是一个Python生成器。您可以将其分配给一个变量,例如g = ([x, y] for x in q for y in p)然后对其进行迭代:

for element in g:
    print(element)

Pandas 此时接受生成器并迭代它们以获取DataFrame.

for评估如下:

for x in q:
    for y in p:
        yield [x, y]

所以这个生成器生成的是一个包含所有元素组合的平面列表q and p.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

双“for”在列表理解中如何工作? 的相关文章

  • pandas 读取列中带有额外逗号的 csv

    我正在阅读一个基本的 csv 文件 其中各列用逗号分隔 列名称如下 userid username body 但是 正文列是一个可能包含逗号的字符串 显然这会导致一个问题 pandas 会抛出一个错误 CParserError Error
  • 如何在redis中使用python删除排序集中的项目

    如何使用 python 删除排序集中大于某个值的项目 key foo pipe redis master conn pipeline pipe zadd key 1 a pipe zadd key 2 b pipe zadd key 3 c
  • 获取父类名? [复制]

    这个问题在这里已经有答案了 class A object def get class self return self class class B A def init self A init self b B print b get cl
  • 如何在 dash/plotly 中使用 iframe? (Python/HTML)

    我正在创建一个仪表板 我想使用这个交互式地图 网站链接 https www ons gov uk peoplepopulationandcommunity healthandsocialcare causesofdeath articles
  • 为什么我的字符串中出现不需要的换行符?

    这应该很简单 这很愚蠢 但我无法让它发挥作用 我有一个在读取文件时定义的标头 if gene env in line or gene HIV2gp7 in line header line 现在这个标题看起来像 gt lcl NC 0018
  • 如何为 PyYAML 编写代表程序?

    我想要一个自定义函数来序列化任意 python 对象 就像 json dump 函数有一个名为 default 的可选参数 如果对象不是 json 可序列化的 它应该是 json 转储器将调用的函数 我只是想从 json 包中执行相当于此操
  • 如何在 Google App Engine (Python) 中定义配置变量/常量?

    我是 python GAE 的新手 想知道如何快速定义和使用全局设置变量 所以说你 git 克隆我的 GAE 应用程序 然后打开config yaml 添加更改设置 应用程序就全部连接起来 如下所示 config yaml or whate
  • python osmnx - 仅提取一个国家的大型高速公路

    我知道可以通过 OSMNX python 包提取城市的道路网络 详情请参阅https geoffboeing com 2016 11 osmnx python street networks https geoffboeing com 20
  • 将列表列表替换为“压缩”列表列表,同时保持顺序

    我有一个列表列表 如我所附的代码所示 如果有任何共同值 我想链接每个子列表 然后我想用列表的精简列表替换列表的列表 例子 如果我有一个清单 1 2 3 3 4 I want 1 2 3 4 如果我有 4 3 1 2 3 I want 4 3
  • 在Python中将月份和年份的列合并为季度和年份的列

    我有一个数据框 df Month 1 8 Year 2015 2020 df pd DataFrame data df df 想要将其转变为新列 期望的输出 df Month 1 8 Year 2015 2020 Quarter Q1201
  • 构建wheel失败/“错误:INCLUDE环境变量为空”

    我正在使用 Python 2 7 11 并尝试 pip install 模块 但是其中一些模块失败了 我收到的消息是 无法为 X 构建轮子 和 错误 包含环境变量为空 我尝试安装 Scrapy LXML 和 Twisted 但都失败了 我尝
  • python请求ssl握手失败

    每次我尝试这样做 requests get https url 我收到这条消息 import requests gt gt gt requests get https reviews gethuman com companies Trace
  • Python httplib 和 POST

    我目前正在使用别人编写的一段代码 它用httplib向服务器发出请求 它以正确的格式提供所有数据 例如消息正文 标头值等 问题是 每次尝试发送 POST 请求时 数据都在那里 我可以在客户端看到它 但没有任何内容到达服务器 我已经阅读了库规
  • matplotlib 后端 - 我关心吗?

    gt gt gt import matplotlib gt gt gt print matplotlib rcsetup all backends u GTK u GTKAgg u GTKCairo u MacOSX u Qt4Agg u
  • 如何使用 opencv python 根据检测到的物体的位置生成其热图

    我需要根据对象的位置生成其热图 示例 视频帧中检测到的绿色球 如果它长时间停留在某个位置 那么该位置应该是红色的 并且球在短时间内经过的帧中的位置必须是蓝色的 这样我就需要生成热图 提前致谢 那么你在这里可以做的是 1 首先定义一个热图作为
  • tkinter 库 treectrl 转换为 exe 安装程序时出现 cx_freeze 错误

    我使用的是 python 版本 3 7 我使用了这个名为 treectrl 的外部库 当我运行 py 文件时它工作得很好 但是当我使用 cx freeze 转换为 exe 文件时 它给了我错误 NomodulleFound 名为 tkint
  • 在 Python 中为非唯一列表创建虚拟列

    目前我有下一个数据框 import pandas as pd df pd DataFrame ID 1 2 3 4 5 col2 a b c c d e f f b f a c b b a b print df ID c
  • print() 函数的有趣/奇怪的机制

    我正在学习Python 我目前正在学习如何定义自己的函数 并且在尝试理解返回值和打印它之间的区别时遇到了一些困难 我读到的关于这个主题的描述对我来说不太清楚 所以我开始自己尝试 我想我现在已经明白了 如果我没记错的话 区别在于你可以传递 a
  • Mac 无法安装 Tensorflow

    我检查了我的 pip3 和 python3 版本 tensorflow MacBook Pro de Hector 2 tensorflow hectoresteban pip3 V pip 10 0 1 from Users hector
  • 无法将 类型的对象转换为张量

    我正在编写一个使用 Flask 框架的客户端 python 文件 并在 docker 机器中运行它 因此 这需要一个输入文件并生成它的输出 但它会抛出无法转换为张量的错误 tf app flags DEFINE string server

随机推荐

  • 生成二维码以在 iOS 应用程序中打开 Facebook 页面

    我正在尝试生成一个二维码 该二维码应该打开手机中安装的 Facebook 应用程序并自动导航到我的页面 I used http www qr code generator com http www qr code generator com
  • Mac 上的 Android Studio

    在 Android Studio 中创建新项目时 在执行任何操作之前 出现以下错误 错误 java io IOException 不支持操作 不支持操作 即使在 gradle 同步和更新之后我仍然收到此错误 有人有线索吗 谢谢 将其设置为在
  • ng 在子目录中生成组件

    我有以下目录结构 我想创建一个新页面 比如说 关于 页面 我想把它放在 src app page about 中 所以我尝试 ng generate component pages about 但我收到此错误 Error More than
  • tesseract Remove_Reference Visual Studio 2012 项目中的不明确符号

    我将更详细地描述我的情况 我正在使用 C OpenCV Tesseect 构建一个车牌识别系统 但是当我编译代码时 它返回给我一堆错误模糊引用 所以我检查了代码的所有行 我在这个小组中搜索了解决方案 并尝试了几种但没有成功 问题 error
  • Golang SSL TCP套接字证书配置

    我正在创建一个 Go TCP 服务器 不是 http s 并且尝试将其配置为使用 SSL 我有一个 StartCom 免费 SSL 证书 我正在尝试使用它来完成此任务 我的服务器代码如下所示 cert err tls LoadX509Key
  • 社交网络(Facebook、Twitter 等)用户帐户集成(重复场景)

    因此 肯定有很多关于如何将各种个人社交网络身份验证 注册集成到现有用户帐户中的教程 但我似乎无法找到太多信息的情况是 如果用户使用不同的社交网络凭据登录您的帐户 例如 场景 1 用户使用站点的身份验证在站点上注册 然后 用户使用 Faceb
  • 如何使用 Swashbuckle 实现 OpenAPI readOnly 和 writeOnly

    我在 Net 5 0 Web API 中使用 Swashbuckle 6 1 1 我仍在学习 但我想实现一个类 其中某些属性仅在使用 阅读 时才有效GET 以及使用 a 进行 写入 时的其他属性POST 根据OpenAPI 规范 https
  • .vue 组件中的条件样式表

    我正在使用 vue 组件 cli vue 仅当某些布尔值为真 假时 我才需要显示样式表 最简单的解释是这样的 什么时候myVar 假 组件未加载样式 我知道那样是不可能的 但是我怎么能做 类似 的事情呢 如果用户想使用默认样式 我需要在 v
  • 在 Linux 上使用命令行 PHP 检查互联网连接

    我在 Linux 上使用命令行 PHP 来打开蓝牙拨号连接 并且我需要一种快速的方法来检查互联网连接是否处于活动状态 嗯 不一定要脏 但要快 使用exec运行外部命令不是问题 我正在考虑 ping 一些稳定的服务器 例如谷歌 但我想知道是否
  • android:Flurry 广告横幅全屏显示

    我正在我的应用程序中实施混乱的横幅广告 但需要全屏 我的主要 Activity xml 是
  • 如何将 CSS 类名添加到 ASP.NET MVC 3 Url.Action 链接?

    在 ASP MVC 3 或 4 使用 Razor 中 如何将 CSS 类应用到 Url Action 辅助方法 是否可以 期望的结果 a href class FOO BAR a 我已经走到这一步了 Url Action Index Hom
  • Maven `pre` 和 `post` 阶段

    Are the pre and post当我执行关联的阶段时总是执行阶段 例如 如果我这样做mvn clean 这会执行mvn post clean也有相吗 我在看https maven apache org guides introduc
  • 如何从 LocalNotification 中删除取消的 ApplicationIconBadgeNumber?

    我在我的应用程序中使用 LocalNotification 它工作正常 但一旦设置了 ApplicationIconBadgeNumber 就无法将其从应用程序中删除 如何去除它 您需要设置应用程序applicationIconBadgeN
  • 显式使用扩展方法

    我有一个List
  • Jenkins 通过选择 Nexus 工件的版本(所有 GAV)进行参数化构建

    是否有 Jenkins 插件可以对我的 Nexus 存储库进行组工件版本 GAV 搜索并列出结果 我希望结果可以在参数化构建中作为选择 下拉列表 提供 我添加了一个常规脚本动态选择参数 https wiki jenkins ci org d
  • 如何将双精度数转换为保留 2 位小数的字符串?

    我正在将这个双精度数转换为字符串 以便可以将其显示在 TextView 上 我希望使用 String format 使字符串具有 2 个小数位 但我不知道将其放在这行文本中的何处 Example setText Double toStrin
  • 如何在 PowerShell 中创建数组的数组?

    我想在 PowerShell 中创建一个数组的数组 x 1 2 3 4 5 6 效果很好 然而 有时我的数组列表中只有一个数组 在这种情况下 PowerShell 会忽略以下列表之一 x 1 2 3 x 0 0 Should return
  • 更改 adb 服务器运行的默认端口(即 5037)

    我是一位崭露头角的 Android 开发人员 如果没有简单的方法来配置 adb 服务器以在另一个端口上运行 那么工具不灵活将迫使我退出 Android 应用程序开发 网络搜索没有返回任何解决方案 我还在 android sdk 目录中的所有
  • Azure NodeJS 控制台日志

    我有 Visual Studio Enterprise MSDN 订阅 因此我决定从 Heroku 迁移到 Microsoft Azure 因为我曾经付费 现在不用了 我的服务计划是 D1 我希望能够跟踪部署在 Azure 平台上的 Nod
  • 双“for”在列表理解中如何工作?

    因此 有关此问题出现的问题背景 请参阅此link https stackoverflow com questions 48049006 matching states and cities with possibly multiple wo