【问题标题】:Explicit type casting in python 2.7 list() functionpython 2.7 list() 函数中的显式类型转换
【发布时间】:2018-02-24 05:44:56
【问题描述】:

给定first_list = []

有什么区别

second_list = first_list

third_list = list(first_list)?

我在程序中遇到错误,在该程序中将显式转换(或列表函数)附加到对象会产生正确的输出。我已经单步执行了代码并检查了类型和值,它们是相同的。 cmp(second_list, third_list) 没有产生差异,但是添加 list 关键字会产生正确的输出,而缺少会产生不正确的结果。两者有什么区别?

我是python的新手,来自java,很困惑。

【问题讨论】:

  • second_list 是指向与first_list 相同的对象的指针。 third_listfirst_list 的新/不同副本。

标签: python python-2.7 list casting iteration


【解决方案1】:
first_list = [1,2,3,4]
second_list = first_list
second_list[0]=9
print(first_list)
print(second_list)
third_list = list(first_list)
third_list[0]=8
print(third_list)

运行上面的代码你会更好理解 修改第二个列表也会修改第一个列表

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-22
    • 1970-01-01
    • 2021-12-30
    • 2015-07-06
    • 2021-05-08
    • 2019-01-13
    • 2021-06-04
    • 2010-09-15
    相关资源
    最近更新 更多