新手学python遇到个问题 请指教

图片说明
图片说明
这两个结果为什么不一样呢?

test0.append(range(1,5))后,test0是[[1,2,3,4]],相当于将一个列表添加到另一个列表里。
通过for的话,test1是[1,2,3,4]

test0 = []
test1 = []

test0.append(range(1,5))  //将"range(1,5)"作为一个字符串赋值给test0

for j in test0: //test0数组其实就只有一个元素,即"range(1,5)" 
    print ("j = %r" %j)

for j in range(1,5):  //通过循环将1 2 3 4 赋值给test1
    test1.append(j)

for j in test1:         //test1数组有四个元素,即 1 2 3 4 
    print ("j = %r" %j)

如果把

 test0.append(range(1,5))

换成 :

 test0 = range(1,5) //将1 2 3 4 赋值给test0

那么输出就都是:

j = 1
j = 2
j = 3
j = 4