Python入门3(赋值)
微信公众号关注我,更多python知识告诉你!
【一:*,-1的作用】
给大家两个例子:
a,b,c,d='spam'
print(a)
print(b)
print(c)
print(d)
a,*b='spam'
print(a)
print(b)
上面这个例子是*号作用的最就简单的例子,要区别于C语言中的指针。第六行语句,a赋的是s,b赋的是pam
seq='computer'
*a,b=seq
print(a)
print(b)
c,d=seq[:-1],seq[-1]
print(a)
print(b)
上面是-1作用的例子,大家可以自己体会
注意:如果有多个带星号的名称,或者如果值少了而没有带星号的名称,以及如果带星号的名称自身没有编写到一个列表中,都将会引发错误
【二:序列赋值】
a=1
b=2
a,b=b,a
print(a)
print(b)
在这里,右侧的原组会自动记住先前的变量值
【三:for循环】
L=[1,2,3,4]
M=[1,2,3,4]
while L:
front,L=L[0],L[1:]
print(front,L) while M:
front,*M=M
print(front,M)
由例子可以看出,上下两段代码的结果是一样的,这就是*的作用
for all in [(1,2,3,4),(5,6,7,8)]:
a,b,c=all[0],all[1:3],all[3]
print(a,b,c)
【四:append】
a=b=[]
b.append(42)
print(a,b) a=[]
b=[]
b.append(42)
print(a,b)
第一段代码,因为a和b引用相同的对象,通过b在原处附加值上去,而我们通过a也会看到相同的效果。第二段代码则有不同的效果。只有append有这个功能
【五:强赋值语句】
强赋值语句类似与C语言中的x+=x,y+=y,但要注意的是Python中没有x++这样的运算符
s='spam'
s+='SPAM'
print(s)
当强赋值语句用于字符串时,增强形式会改为执行合并运算
强赋值语句的优点:
1、左侧只需计算一次,在x+=x中,x可以是复杂的对象表达式。在增强形式中,则只需计算一次。然而,在完整形式x=x+y中,x出现两次,必须执行两次。因此,增强赋值语句通常执行更快。
2.当我们使用增强赋值语句时,Python会自动调用较快的方法
a=[1,2,3]
b=[1,2,3]
a.extend([4,5])
b=b+[4,5]
print(a)
print(b)
在上面这个例子中,上下两段代码的结果是一样的,但是.extend方法更快一点。然后我们再来看下面这个例子
a=[1,2,3]
a+=[4,5]
print(a)
这个例子调用的就是更快速的.extend方法,虽然表面上看不出,但Python内部就是调用更高效的方法的
注意:
L=[1,2]
M=L
L=L+[3,4]
print(M,L) L=[1,2]
M=L
L+=[3,4]
print(M,L)
以上两个例子的差异大家自己体会一下
+=能对列表做原处修改
M=L=[1,2]
L.append(3)
print(M,L) M=L=[1,2]
L=L+[3]
print(M,L)
再次感受一下append的作用
Python入门3(赋值)的更多相关文章
- python入门简介
Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- Python运算符,python入门到精通[五]
运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...
- Python基本语法[二],python入门到精通[四]
在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...
- 老鸟的Python入门教程
转自老鸟的Python入门教程 重要说明 这不是给编程新手准备的教程,如果您入行编程不久,或者还没有使用过1到2门编程语言,请移步!这是有一定编程经验的人准备的.最好是熟知Java或C,懂得命令行,S ...
- Python自动化运维之1、Python入门
Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...
- Python 入门基础学习
Python入门学习 我们使用python3.0版本 首选来入门 带你进入Hello World >>> print ("Hello World")Hell ...
- 笔记|《简明Python教程》:编程小白的第一本python入门书
<简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...
- python入门基础
Python 入门 变量 什么是变量?变量就是变化的量,核心是"变"和"量"两个字,变就是变化,量就是衡量状态. 为什么需要变量?程序执行的本质就是一系列状态的 ...
- python入门(10)使用List和tuple
python入门(10)使用List和tuple list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可 ...
- python入门(8)数据类型和变量
python入门(8)数据类型和变量 数据类型 在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 ...
随机推荐
- linux scp上传文件到其他机器上
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
- 你都掌握了吗?jQuery 选择器大全
在 Dom 编程中我们只能使用有限的函数根据 id 或者 TagName 获取 Dom 对象. 然而在 jQuery 中则完全不同,jQuery 提供了异常强大的选择器用来帮助我们获取页面上的对象, ...
- HDU 2571 命运 (入门dp)
题目链接 题意:二维矩阵,左上角为起点,右下角为终点,如果当前格子是(x,y),下一步可以是(x+1,y),(x,y+1)或者(x,y*k) ,其中k>1.问最大路径和. 题解:入门dp,注意负 ...
- 【leetcode 简单】 第八十七题 两整数之和
不使用运算符 + 和-,计算两整数a .b之和. 示例: 若 a = 1 ,b = 2,返回 3. class Solution: def getSum(self, a, b): "&quo ...
- TI的H264 SOC方案
TI的H264 SOC方案是目前常用的视讯解决方案,TI针对视频会议,视频监控,视频存储等场景细化需求并优化了H264技术. 1. TI H.264背景 如今视频压缩技术在视频领域有非常多的应用需求. ...
- layui-laypage模块代码详解
/** layui-v2.4.0 MIT License By https://www.layui.com */;layui.define(function(e) { "use strict ...
- HADOOP百度云资料
百度云下载地址: 链接:http://pan.baidu.com/s/1pL56hkv 密码:u4h3 解压密码:www.mukedaba.com
- 做了这么久的 DBA,你真的认识 MySQL 数据安全体系?【转】
给大家分享下有关MySQL在数据安全的话题,怎么通过一些配置来保证数据安全以及保证数据的存储落地是安全的. 我是在2014年加入陌陌,2015年加入去哪儿网,做MySQL的运维,包括自动化的开发. 接 ...
- win7 64位mysql安装及navicat 解压版
教程:http://jingyan.baidu.com/article/f3ad7d0ffc061a09c3345bf0.html Mysql修改设置root密码的命令及方法:http://jingy ...
- 一种获取xml文件某个节点内容的shell方法
配置文件 config.xml <xml> <server> <name>srv-01</name> </server> <serve ...