你好,我有一个问题,我有一个列表,我需要它的第一个项目。我听起来很简单,但找不到解决方案。在列表中,第一个项目始终是一个数字,但我不知道该数字有多长,因此它可能是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])
问题是,如果我这样做,它只会给出第一个字母。
答案 0 :(得分:1)
您面临的问题是因为您正在访问标题列表中每个元素的第一项。 当您使用时:
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])
快乐的编码...:):):)