初学者python中while和for搭配的一个小疑问

比如有下面一段代码:
num=0
lst=[]
while num<5:
for i in range(10):
lst.append(i)
num+=1
print(lst)

此时结果是0123456789

为什么不是01234呢?

初学Python,一直搞不明白,望指教

注意for i in range,这个让i从0到9循环,然后把i的值加进了那个list中,就是lst现在是[0,1,2,3,4,5,6,7,8,9]了,跟while没有关系。
不过这个结果应该是0到9重复5次才对,因为while会让这个for重复5次,就是放进去了5次0到9

for i in range(10):
lst.append(i)
num+=1
这两句是一直执行的,for循环执行结束了才会执行后面的语句
也就是说for循环全部执行完了,再回到while那里进行判断
并不是每次num变化都会进去while进行判断
望采纳!谢谢