python总结(更新中)

1 python函数中的参数传递(注意可变和不可变传递)

可更改(mutable)与不可更改(immutable)对象

在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。

  • 不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。
  • 可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

python 函数的参数传递:

  • 不可变类型:类似 c++ 的值传递,如 整数、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。
  • 可变类型:类似 c++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后fun外部的la也会受影响
时间: 2024-08-07 04:34:01

python总结(更新中)的相关文章

细数Python与C++的区别(更新中……)

Python与C/C++有不少区别,其中一些很容易疏忽,导致程序出错.这里列了一些,供大家参考.持续更新中-- Python没有自增自减运算符 C/C++中有++i.i++.--i.i--.而Python则没有这些运算符.C/C++的一个常见循环是: for (int i = 0; i < 10; ++i) { std::cout << i << endl; } 而Python对应的循环为: for i in range(10): print (i) 也许这是Python不提

如何在Anaconda中把python环境更新更高版本

为了能够跟着廖大大继续学python,必须要把Anaconda中的python从3.5.5更新到3.6版本,不想卸载重新安装,找了好多办法直接来更新,花费了两个小时,简直要吐血,最终还是解决了.办法如下: 在Anaconda Promot中,输入: conda update conda conda update anaconda conda update python 也许cmd中输入这些也可以,可以试试. 原文地址:http://blog.51cto.com/13930723/2299452

python调用虹软2.0(全网首发)-更新中

python调用虹软2.0目前没有任何demo可以参考,自己研究了2个晚上终于把第一步做出来了,使用了opencv来加载和显示图片,龟速更新中 1 from ctypes import * 2 #人脸框 3 class MRECT(Structure): 4 _fields_=[(u'left1',c_int32),(u'top1',c_int32),(u'right1',c_int32),(u'bottom1',c_int32)] 5 #版本信息 版本号,构建日期,版权说明 6 class A

Hello World!的各种编程语言程序(持续更新中……)

对于很多学习编程语言新手们,可能接触到的第一个程序就是"Hello World"的输出程序,笔者想在此篇简短的博文中介绍关于各种编程语言的"Hello World"输出程序. 至今,笔者仅仅接触过C++和Python两种编程语言,而且都仅仅是新手,所以此次只能写C++和Python两种语言的"Hello World"输出程序,但此篇博文会随着笔者学习的编程语言种类的增多而不断完善. 1. C++语言 #include<iostream>

Icehouse版keystone配置完全详解(更新中)

本文全面解读Icehouse发行版keystone的配置文件keystone.conf [DEFAULT]admin_token=(string value)# 这是一个公知的密码,用于初始化keystone,强烈建议在生产模式中禁用,只需要在# keystone-paste.ini文件中移除AdminTokenAuthMiddleware这个pipeline即可 public_bind_host=(string value)# The IP Address of the network int

ansible部署及应用--持续更新中

1.简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能.ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架.主要包括: (1).连接插件connection plugins:负责和被监控端实现通信: (2).host inventory:指定操作的主机

Apple Swift 中文教程 快速参考 基本语法 更新中...

总的来说,语法有java的味道,也有python的味道,还有swift自己的味道. 有些语法还是挺不伦不类的,不太好理解,即使你有几年的java或python经验,也不见得有些语法你能很轻松的看明白. 有些语法特性很好,很个性,但有些语法个人感觉乱,特性多,注意点多,还不太好理解. 慢慢学习吧... ================================================================= 值类型 Int Double Bool String 用双引号"&

解读keystone命令行工具(1)(更新中)

本文档介绍icehouse发行版keystone命令 keystone客户端命令行提供用于和keystone服务器交互的方便工具,但是该命令行工具逐渐受到社区的摒弃: “Pending deprecation: Command-line interface to the OpenStack Identity API. This CLI is pending deprecation in favor of python-openstackclient. For a Python library,

windows 如何将安装Anaconda之前已经安装的python版本(中已安装的库)移动到 Anaconda中

题目]如何将安装Anaconda之前已经安装的python版本(中已安装的库)移动到 Anaconda中 一.概述 之前安装tensorflow的安装了anaconda并用它进行安装,anaconda安装后里面也带有一个python的版本,之后我发现在cmd中运行时使用的的原来的python版本,并且此版本的python与anaconda中的是相互隔离的,我在原有的python下安装的库,激活tensorflow后是没有的. 所以就想将两个python版本进行合并. 在网上查找了好久,保留原有p

目录---(更新中...)

目录 大数据 大数据的行业与技术趋势 大数据学习路线 FusionInsight大数据开发学习总结(1) FusionInsight大数据开发---HDFS应用开发(2) 软件设计  软考知识分析 面向对象设计-自查 计算机组成原理和体系结构—自查  自检!!!操作系统基本原理  软考自查!!!数据库系统  软考自查--计算机网络 软考自查:数据结构与算法基础 软考自查:软件工程 软考自查-信息安全基础知识 软考自查:程序设计语言与语言处理程序基础 软考自查:法律法规与标准化知识 软考自查:数据