python - 需要数组的第一项但只得到第一个字母
问题描述
你好我有一个问题我有一个清单,我需要它的第一个项目。我听起来很简单,但我找不到解决方案。列表中的第一项总是一个数字,但我不知道这个数字有多长,所以它可能是 54 或 761。这是一个示例代码:
for title1 in soup.select('h1'):
title.append('645')
title.append(*[title1.get_text(strip=True)])
with open('title.csv', 'w', newline='', encoding="utf-8") as csvfile:
writer = csv.writer(csvfile, delimiter=';', quotechar=None, quoting=csv.QUOTE_NONE, escapechar='\\')
for row in title:
print(row[0])
问题是,如果我这样做,它只会给出第一个字母。
解决方案
您面临的问题是因为您正在访问标题列表中每个元素的第一个术语。当你使用:
for row in title
它会自动迭代该列表中的每个项目,因此您不必使用row[0]来访问第一个元素。在这里,我已经为您修复了代码:
for title1 in soup.select('h1'):
title.append('645')
title.append(*[title1.get_text(strip=True)])
with open('title.csv', 'w', newline='', encoding="utf-8") as csvfile:
writer = csv.writer(csvfile, delimiter=';', quotechar=None, quoting=csv.QUOTE_NONE, escapechar='\\')
for row in title:
print(row)
但是您的这段代码会输出该列表中的所有内容,所以我要求 yopu 使用以下代码以仅获取第一个元素。
for title1 in soup.select('h1'):
title.append('645')
title.append(*[title1.get_text(strip=True)])
with open('title.csv', 'w', newline='', encoding="utf-8") as csvfile:
writer = csv.writer(csvfile, delimiter=';', quotechar=None, quoting=csv.QUOTE_NONE, escapechar='\\')
print(title[0])
快乐的编码...:):):)
推荐阅读
- ios - 共享大文件时无法打开共享扩展
- xml - 如何从 FastReport 模板中删除 ConnectionString?
- azure-powershell - 如何在 Azure 中获取自托管集成运行时的部署方法?
- jpa - 为什么@OneToMany 映射中有循环?
- java - Ebean:保存新行时未生成id
- go - golang中目录结构与包的关系
- docusaurus - 有没有办法让所有博客文章在另一个组件中使用?
- python - 如何将数据框字符串列拆分为多列?
- python - Django - TypeError - quote_from_bytes() 预期字节
- android - WiFi关闭时未调用NetworkCallback