python基础知识
freak_zone
这个作者很懒,什么都没留下…
展开
-
python 列表复制给另一个列表,改值两个列表均会改变(备忘)
本意是使A = B,B为一个列表,结果在后续对A的操作中,导致B中的值也改变了,才回忆起python中均为“引用”这话。为避免这种情况,对这篇博文总结有两种情况可避免。利用列表切片 A = B[:] #这种不行深拷贝 A = copy.deepcopy(B)...原创 2022-03-27 16:42:07 · 1640 阅读 · 0 评论 -
TypeError: ‘str‘ object does not support item assignment
可以使用 s[i] 的方法读取python字符串的内容,但如果写如下代码就会报错num[i] = '9'python中的字符串跟C++的有点不一样,python的字符串是一种不可变对象(immutabel object),意味着只读不写,线程安全。C++的字符串我们可以直接使用s[0]='0’这种语法对字符串中的某个字符赋值,而python不可以。在python中,可以先将字符串转成列表,然后再进行赋值操作,再将其转变回来。class Solution: def monotoneIncre原创 2022-03-08 17:28:27 · 8429 阅读 · 0 评论 -
python 同时给多个变量赋值
python 交换两个值的时候可以这样简写s[left], s[right] = s[right], s[left]按正常思维应该先 s[left] = s[right],然后 s[right] = s[left],值会被覆盖掉,导致s[right]的值还是它自己但这条语句确实可以实现变量交换,因为在连续赋值语句中等式右边其实都是局部变量,而不是真正的变量值本身,比如,上面例子中右边的s[right], s[left],在python解析的时候,只是把s[right], s[left]的值赋给左边原创 2022-03-01 22:41:49 · 1386 阅读 · 0 评论 -
python list.reverse() 与 list[::-1] 的区别
这两个操作功能一直,但 list.reverse() 没有返回值# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def levelOr原创 2022-02-22 17:18:22 · 335 阅读 · 0 评论