swap里面的a,b 不会影响函数作用域外面的变量

java也不可以的吧;python里面没有指针,你可以认为所有的东西都是指向的内容,但是不要试图去改变指针的值

其实我觉得所有的对象都是不可变对象,所谓的可变对象,如列表等,只是常用的操作是可变操作而已(如:append)
a[0] = 1也会变啊,这些改的并不是列表本身,而是列表中的元素
数组本身的地址没变,但是里面的元素可变

a = [1] 这样就完全改了
所以没什么是可变的,都是不可变的,所谓可变并不是实际可变,只是常用操作没有改变

只能传type* 或者vector

哪有什么指针,都是对象

go更混乱了

def change(a):
a.name = 'b'
return a
按照python的思路,肯定是这样的写法,函数就应该有明确返回

java 列表、数组遇到多线程时,各种并发错误烦死人

http://www.cnblogs.com/xiaoQLu/archive/2013/04/10/3011561.html

按照python的思路,肯定是这样的写法,函数就应该有明确返回

一句一句来,第一个val.append(100),并没有修改列表,只是往列表里面加一个元素,并不会引起列表的引用改变,外部nums的列表引用和内部val是同一个,所以nums=[0, 1, 100];而val = ['T', 'Z', 'Y'] 这一句,是完全改变了列表,列表归根究底是不可变的,所以此时val变成了一个全新的列表['T', 'Z', 'Y'],并且分配了一个地址,最后函数没有返回值,所以val在这个语句之后就会被回收,没有造成任何影响;

//python不能修改引用(变量) 可以修改对象

任何对象都是不可变的
所谓的可变对象只是常用操作没有改变对象本身,只是改变某一个属性

如果真要区分可变对象不可变对象,不如说是可哈希化和不可哈希化

如人类 与 对象你自己
对象(你自己)是不可变的,是具体的;但你的身高,体重等属性却是可变的

python swap的更多相关文章

  1. Swap 2 Variables in Python

    In Python, it's concise, easy and faster to swap 2 variables compared in other Programming languages ...

  2. 【部分原创】python实现视频内的face swap(换脸)

    1.准备工作,按博主的环境为准 Python 3.5 Opencv 3 Tensorflow 1.3.1 Keras 2 cudnn和CUDA,如果你的GPU足够厉害并且支持的话,可以选择安装 那就先 ...

  3. [Leetcode][Python]24: Swap Nodes in Pairs

    # -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com' 24: Swap Nodes in Pairshttps://oj.leetc ...

  4. 【原创】python实现视频内的face swap(换脸)

    1.准备工作,按博主的环境为准 Python 3.5 Opencv 3 Tensorflow 1.3.1 Keras 2 cudnn和CUDA,如果你的GPU足够厉害并且支持的话,可以选择安装 那就先 ...

  5. 06 swap命令,进程管理,rmp命令与yum命令,源码安装python

    作业一: 1)开启Linux系统前添加一块大小为15G的SCSI硬盘 2)开启系统,右击桌面,打开终端 3)为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大 ...

  6. leetcode 【 Linked List Swap Nodes in Pairs 】 python 实现

    题目: Swap Nodes in Pairs Given a linked list, swap every two adjacent nodes and return its head. For ...

  7. leetcode 【 Swap Nodes in Pairs 】python 实现

    题目: Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1-> ...

  8. 888. Fair Candy Swap@python

    Alice and Bob have candy bars of different sizes: A[i] is the size of the i-th bar of candy that Ali ...

  9. 力扣—— Swap Nodes in Pairs(两两交换链表中的节点) python实现

    题目描述: 中文: 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表. 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换. 示例: 给定 1->2->3->4, ...

随机推荐

  1. IIS的安装和配置

    一.首先是安装IIS.打开控制面板,找到“程序与功能” 二. “打开或关闭Windows功能”, 安装 “Internet 信息服务” 三. 安装完后回控制面板里面,找到“管理工具” 四. 双击“In ...

  2. [WIFI] WIFI 破解(初级)

    话不多说,先来看看字典破解 wpa2 的效果 =================================== ========================================= ...

  3. 拼接的html的onclick事件中无法传递对象给js方法的处理办法

    如下: 拼接的html: " onclick=\"valDocName2('"+JSON.stringify(doc).replace(new RegExp(" ...

  4. 微信小程序 --- 事件绑定

    事件类别: tap:点击事件: longtap:长按事件: touchstart:触摸开始: touchend:触摸结束: touchcansce:取消触摸: 事件绑定: bind绑定: catch绑 ...

  5. Centos6.8 防火墙设置

    1.指令 vi /etc/sysconfig/iptables 添加以下内容和要开放的端口 # Firewall configuration written by system-config-fire ...

  6. Windows Bat 批处理脚本

    Windows Bat 批处理脚本 – Getting Started – Variables – Return Codes – stdin, stdout, stderr – If/Then Con ...

  7. ArcGIS API for JavaScript开发笔记(一)——ArcGIS for Javascript API 3.14本地部署

    堪称史上最详细的< ArcGIS forJavascript API 3.14本地部署>文档,有图有真相~~~ ---------环境:Windows server 2012R2,IIS ...

  8. 为什么 要弄清楚 mysql int(5) int(11) bigint 自建mysql主键id python random 科学计数法

    场景: 有1.2亿条问答数据,相同问题的不同答案为不同条的数据,且该表数据逐日递增: 第三方需求(不合理): 将问题.答案数据分别放入问题表.答案表: 问题表的主键为整数,在答案表中,每行数据有相应的 ...

  9. scrapy爬虫系列之五--CrawlSpider的使用

    功能点:CrawlSpider的基本使用 爬取网站:保监会 主要代码: cf.py # -*- coding: utf-8 -*- import scrapy from scrapy.linkextr ...

  10. mysql 约束条件介绍

     mysql 约束条件介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FO ...