python - 这个字符串不是与来自 pytz.country_timezones 的列表的内容相比吗
问题描述
无法获得以下输出:
import pytz # Python timezone library
for x in sorted(pytz.country_timezones):
if "Asia" in pytz.country_timezones[x]:
print(pytz.country_timezones[x])
以下代码为我提供了输出:
for x in sorted(pytz.country_timezones):
for y in pytz.country_timezones[x]:
if "Asia" in y:
print(pytz.country_timezones[x])
为什么它不在完整列表 pytz.country_timezones[x] 中比较和匹配,而是能够比较和匹配列表中的各个项目。抱歉,python 新手。
解决方案
pytz.country_timezones[x]
是一个包含多个元素的列表,例如 for x="NZ"
, pytz.country_timezones['NZ'] =['Pacific/Auckland', 'Pacific/Chatham']
.
在第一个片段中,您询问确切的表达式是否Asia
出现在pytz.country_timezones[x]
第二个片段中,您好像Asia
是pytz.country_timezones[x]
.
由于Asia
它本身从未出现在pytz.country_timezones[x]
第一个片段中,因此不会打印任何内容。
推荐阅读
- html - 输入文本颜色与空闲颜色不同
- javascript - 使用两个 jquery 下拉菜单进行依赖过滤
- c# - Msbuild v15 无法解析 nuspec 文件元数据的变量
- ios - 导航选项不显示在 Eureka 自定义行中
- c++ - 相当于 Windows 任务计划程序的 Osx (10.12+)
- google-app-engine - GWT LayoutPanel 子事件不起作用
- airflow - 气流 HDFS 传感器
- django - 无法在 Django 中查询“PublisherQuerySet”属性
- sql - 如何解决 SSIS 包截断错误
- msbuild - 从同一解决方案中的项目引用 Nuget 包所需的解决方案