我写了一个对单链表进行排序的程序,核心部分如下:

class Solution:

def insertionSortList(self, head):

ans = None

cur = head

while cur is not None:

if ans is None or ans.val > cur.val:

tmp = ListNode(cur.val)

tmp.next = ans

ans = tmp

cur = cur.next

continue

ptr = ans

while ptr.next is not None and cur.val >= ptr.next.val:

ptr = ptr.next

tmp.val = ListNode(cur.val)

tmp.next = ptr.next

ptr.next = tmp

cur = cur.next

return ans

在tmp.next = ptr.next之后这两者指向了同样的对象(初始都是None)然后我发现后面ptr.next = tmp使得tmp.next指向了tmp自己。

在命令行中我写了如下几句:

a = None

b = a

a = 1

然而此时的b并没有改变,仍然是None。难道这与python的小整数缓存池有关吗?

None在python底层是如何表示的呢?我该怎么修改我的代码才能达到目的呢?

python继承如何进行引用传递的区别_python在什么情况下会引用传递呢?相关推荐

  1. 凯撒密码:设想在某些情况下给朋友传递字条信息,但又不希望传递中途被第三方看懂这些信息,因此需要对字条信息进行加密处理

    题目 凯撒密码:设想在某些情况下给朋友传递字条信息,但又不希望传递中途被第三方看懂这些信息,因此需要对字条信息进行加密处理.凯撒密码采用了替换算法对信息中的每一个英文字符循环替换为该字符后面第三个字符 ...

  2. Flink并行运行情况下watermark的传递机制

    今天学习了watermark传递机制,弄清楚了在多并行度情况下watermark的传递机制,特此备忘 此处使用的案例是参考了尚硅谷武老师flink教程中的案例,在此表示感谢 案例源代码 package ...

  3. python实例方法、类方法、静态方法的区别_Python 实例方法、类方法、静态方法的区别与作用...

    Python 实例方法.类方法.静态方法的区别与作用 一.总结 一句话总结: 实例方法:第一个参数必须是实例对象,该参数名一般约定为"self",通过它来传递实例的属性和方法(也可 ...

  4. python中的return和print的区别_python中return和print的区别(详细)

    Huskiesir python最近正在研究.今天,我面临一个问题,那就是,返回和印刷的区别.双方都能输出结果.的区别是什么?闲话少说,看下面的例子.# Code1: def break_words( ...

  5. python中单引号和双引号的区别_python中单引号和双引号的区别

    在Python当中表达字符串既可以使用单引号,也可以使用双引号,那两者有什么区别吗? python单引号和双引号的区别 简单来说,在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符 ...

  6. python字符串和字节串有什么区别_python – 字符串和字节字符串之间的区别是什么?...

    在Python 2中,str和字节是相同的类型: >>> bytes is str True 在Python 3中,str类型是Python 2的unicode类型,它是所有字符串的 ...

  7. python交互式窗口怎么换行_Python多版本情况下四种快速进入交互式命令行的操作技巧

    原标题:Python多版本情况下四种快速进入交互式命令行的操作技巧 因为工作需求或者学习需要等原因,部分小伙伴的电脑中同时安装了Python2和Python3,相信在Python多版本的切换中常常会遇 ...

  8. python引用传递和值传递的区别_Python 值传递和引用传递

    值传递和引用传递 python的值传递不会改变传入参数的值,而引用传递传入的是一个地址,有点类似c的指针,在执行完成之后会改变传入地址所指的值. 值传递类型如下: 上面的代码只是将a的值作为参数传递进 ...

  9. python引用传递的区别_python的值类型和引用类型及值传递和引用传递的区别

    值类型: 包含:字符串.元组.数值,本身不允许被修改 引用类型: 包含:列表.字典,本身允许修改 a = 2 b = a a = 3 修改值类型的值,只是让它指向一个新的内存地址,并不会改变变量b的值 ...

最新文章

  1. 局部加权线性回归(Local Weighted Linear Regression)+局部加权回归+局部线性回归
  2. android app系统的测试_计算机毕设项目003之基于Android系统的App点餐外送系统
  3. pytorch笔记:09)Attention机制
  4. [NSTaggedPointerString text]:unrecognized selector sent to instance
  5. conda(pip) bad interpreter的解决办法
  6. [html] HTML5的video怎么取消自动播放?
  7. raft协议 MySQL 切换_Raft 协议实战系列(二)—— 选主
  8. webkit内核 css,webkit内核
  9. RSA、DSA算法原理与举例
  10. VS2005 + VSS2005 的方法
  11. winxp netbeui install
  12. go浏览器java_GO浏览器JAVAWP版下载_GO浏览器JAVA2016最新版_GO浏览器JAVA1.2.2-华军软件园...
  13. 京东登月机器学习平台 团队_发展您的安全团队并让机器人来完成工作
  14. 网络编程-HTTP编程
  15. 树莓派:64位 RPI OS(Bullseye) 更换国内源
  16. 电子签名就是数字签名吗?
  17. 中国医学计算机成级别像杂志,中国医学计算机成像杂志
  18. python termios
  19. 指定IP地址进行远程访问设置方法windows
  20. WEB开发还有前途吗?

热门文章

  1. NAT与DHCP协议
  2. Leetcode--239. 滑动窗口最大值
  3. Leetcode--142. 环形链表Ⅱ
  4. vb.net读取excel并写入dgv_读取PDF中的表格写入EXCEL?30行代码搞定
  5. 计算机插件技术应用原理,计算机软件技术中插件技术的运用
  6. java简单小项目_Java简易抽奖系统小项目
  7. 串口打印怎么使用】_爱普生打印机怎么使用 爱普生打印机使用方法【详解】...
  8. matlab 小波中心频率,小波频域特性Matlab实现.pdf
  9. VC++6.0怎么打开工程
  10. halconC++类:HDevWindowStack