波大大12138 发表于 2020-5-30 19:05:04

求助

1.为什么我运行这个程序系统会报错啊?应该没问题的啊,我是把答案中的程序直接复制到IDle里运算的?他警告我是:invalid syntax
old=
new=old
old=
print(new)
2.这个程序的结果为什么是,??他和这个程序什么区别:
list1=【1,2,3,4,5]
list2=list1
list1=
print(list2)

nizitao 发表于 2020-5-30 19:08:23

你的【]是一中一英python不认识中文符号

波大大12138 发表于 2020-5-30 19:14:16

nizitao 发表于 2020-5-30 19:08
你的【]是一中一英python不认识中文符号

我改了之后还是一样的错误,所有的符号都改了

Twilight6 发表于 2020-5-30 19:14:53

。。。你用了中文字符,只能使用英文字符的

Twilight6 发表于 2020-5-30 19:15:49

波大大12138 发表于 2020-5-30 19:14
我改了之后还是一样的错误,所有的符号都改了

这两个程序完全是一模一样的,只是改个变量名而已

波大大12138 发表于 2020-5-30 19:16:50

Twilight6 发表于 2020-5-30 19:14
。。。你用了中文字符,只能使用英文字符的

我把字符改成英文了,还是错误,不知道为什么

Twilight6 发表于 2020-5-30 19:17:19

波大大12138 发表于 2020-5-30 19:16
我把字符改成英文了,还是错误,不知道为什么

不可能的哦,你是没复制好你复制我的代码试试
old=
new=old
old=
print(new)

波大大12138 发表于 2020-5-30 19:26:53

Twilight6 发表于 2020-5-30 19:17
不可能的哦,你是没复制好你复制我的代码试试

这下对了,还有一个问题,小甲鱼课上说过一个例子,如果这种程序下它的结果是不会变的,但是如果将list1进行倒序排列的话,list2也是会随之变化的,这时候list2会随list1变化是为什么啊,如果list1=【1,2,4,3,5】的条件下

Twilight6 发表于 2020-5-30 19:32:28

波大大12138 发表于 2020-5-30 19:26
这下对了,还有一个问题,小甲鱼课上说过一个例子,如果这种程序下它的结果是不会变的,但是如果将list1 ...

因为
list1 =
list2 = list1就等价于
list2 =

list1 和 list2 都是 这个列表的 '外号'

他们的根本都是指向这个列表的,所以你如果改变了其中一个,另一个肯定也会改变,因为他们指的是同一个列表

波大大12138 发表于 2020-5-30 19:38:45

Twilight6 发表于 2020-5-30 19:32
因为
list1 =
list2 = list1就等价于


ok
页: [1]
查看完整版本: 求助