[英]How do I import an external text file from a website and use a list from inside it
我在嘗試完成這項工作時遇到問題
import requests
import random
response = requests.get("https://cdn.discordapp.com/attachments/480168592164257792/557872162661335040/aaaaa.txt")
data = response.text
for line in data:
print(line)
我試圖從互聯網上提取一個 txt 文件,並且能夠使用文本文件中的列表。
現在它所做的只是假設每個字母都是不同的字符串(?)
response.text 似乎是字符,如果你遍歷它們,你會得到每個字符串。 (閱讀有關 Python 如何處理字符串的信息)。 在這種情況下,Python 不知道“線”是什么。 所以用換行符拆分數據並重試:
import requests
import random
response = requests.get("https://cdn.discordapp.com/attachments/480168592164257792/557872162661335040/aaaaa.txt")
data = response.text
for line in data.split("\n"):
print(line)
屬性response.text
是一個字符串,所以迭代它會給你單獨的字符。 您可以按空格(或換行符)拆分字符串以獲得所需的內容(我還添加了一些打印語句來顯示步驟):
import requests
response = requests.get(
"https://cdn.discordapp.com/attachments/480168592164257792/557872162661335040/aaaaa.txt")
print('response.text type:', type(response.text))
print('response.text len:', len(response.text))
print(response.text)
print()
print('splitting by spaces:')
for i, s in enumerate(response.text.split()):
print(i, s)
print()
print('splitting by newlines:')
for i, line in enumerate(response.text.split('\n')):
print(i, line)
代碼給出了這個輸出:
response.text type: <class 'str'>
response.text len: 21
a = ["please","work"]
splitting by spaces:
0 a
1 =
2 ["please","work"]
splitting by newlines:
0 a = ["please","work"]
@bruno 在評論中建議使用str.splitlines()
; 即使響應是字節,這也會起作用,因為還存在方法bytes.splitlines()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.