【发布时间】:2021-11-09 20:20:14
【问题描述】:
我创建了一个脚本来读取 m3u8 文件中的信息并将它们存储在字典中。
代码的第一部分正在运行,但 while 循环似乎根本没有运行。而且它甚至没有给出错误。可能它不可能是语法错误。我无法想象可能是什么原因..
file=open("Downloads/chunk.m3u8", "r")
f = file.readlines()
infodict={}
x=0
x2=0
y=["#EXTENC","#PLAYLIST","#EXTGRP","#EXTLAP","#EXTART","#EXTGENRE","#EXTM3A","#EXTBYT","#EXTBIN","#EXTIMG","#EXT-X-VERSION","#EXT-X-START","#EXT-X-PLAYLIST-TYPE","#EXT-X-TARGETDURATION","#EXT-X-MEDIA-SEQUENCE","#EXT-X-INDEPENDENT-SEGMENTS","#EXT-X-MEDIA","#EXT-X-STREAM-INF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","EXT-X-DISCONTINUITY-SEQUENCE","#EXT-X-KEY","#EXT-X-MAP","#EXT-X-PROGRAM-DATE-TIME","#EXT-X-DATERANGE","#EXT-X-I-FRAMES-ONLY","#EXT-X-I-FRAME-STREAM-INF","#EXT-X-SESSION-DATA","#EXT-X-SESSION-KEY"]
y1=y[x2]
if "#EXTM3U" in f[x]:
s="#EXTM3U"
infodict[s]= ""
x=x+1
while x2<=len(y):
if y1 in f[x]:
s=f[x].rstrip("\n").split(":",1)
infodict[s[x]+":"]= s[x+1]
x=x+1
x2=x2+1
elif "#EXT-X-ENDLIST" in f[x]:
break
else:
x2=x2+1
continue
print(infodict)
只有输出是这个,
{'#EXTM3U': ''}
【问题讨论】:
-
尝试过使用调试器来验证您是否假设
while循环没有被执行?
标签: python loops dictionary while-loop m3u8