python整数序列求和_Python从菜鸟到高手(14):序列的加法和乘法

1 序列的加法

序列也可以相加,但要注意,这里的相加,并不是相对应的序列元素值相加,而是序列首尾相接。由于字符串属于字符序列,所以字符串相加也可以看做是序列相加。但一个字符串不能和一个序列相加,否则会抛出异常。

本例演示了两个序列之间的加法,以及序列和字符串之间相加后会抛出异常。

print([1,2,3] + [6,7,8]) # 运行结果:[1,2,3,6,7,8]

print("Hello" + " world") # 运行结果:Hello world

print([1,2,3] + ["hello"]) # 把字符串作为序列的一个元素,运行结果:[1,2,3,"hello"]

# 运行结果:[1,2,3,'h', 'e', 'l', 'l', 'o']

print([1,2,3] + ['h', 'e', 'l', 'l', 'o'])

print([1,2,3] + "hello") # 抛出异常,序列不能和字符串直接相加

程序运行结果如下图所示。

我们可以看到,上面代码中运行最后一条语句会抛出异常,原因是序列和字符串相加。而要想让“hello”和序列相加,需要将“hello”作为序列的一个元素,如["hello"],然后再和序列相加。两个相加的序列元素的数据类型可以是不一样的,例如,上面代码中第3行将一个整数类型的序列和一个字符串类型的序列相加,这两个序列会首尾相接连接在一起。

2. 序列的乘法

如果用数字n乘以一个序列会生成新的序列,而在新的序列中,原来的序列将被重复n次。如果序列的值是None(Python语言内建的一个值,表示“什么都没有”),那么将这个序列与数字n相乘,假设这个包含None值的序列长度是1,那么就会产生占用n个元素空间的序列。

本例通过字符串与数字相乘,复制字符串,通过将序列与数字相乘,复制序列。

# 字符串与数字相乘,运行结果:hellohellohellohellohello

print('hello' * 5)

# 序列与数字相乘,运行结果:[20, 20, 20, 20, 20, 20, 20, 20, 20, 20]

print([20] * 10)

# 将值为None的序列和数字相乘,运行结果:[None, None, None, None, None, None]

print([None] * 6)

程序运行结果如下图所示。

本例会利用序列的乘法生成一个611二维的序列,序列的每一个元素是一个一维的序列,序列中的每一个元素是空格或星号(),二维序列中的元素,会形成一个由星号(*)组成的正三角形。

spaceNum = 5 # 表示每一行星号一侧最多的空格数,本例是5

i = 1

lineSpaceNum =spaceNum # 表示当前行的前后空格数

triangle = [] # 二维列表

# 开始生成三角形

while lineSpaceNum >= 0:

# 生成星号左侧空格序列

leftSpaceList = [' '] * lineSpaceNum

# 生成星号列表

starList = ['*'] * (2 * i - 1)

# 生成星号右侧空格序列

rightSpaceList = [' '] * lineSpaceNum

# 生成每一行的序列

lineList = leftSpaceList + starList + rightSpaceList

triangle.append(lineList)

lineSpaceNum -= 1

i += 1

for line in triangle:

print(line)

程序运行结果如下图所示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410328.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql xtrabackup 遭遇严重bug

我们的mysql 备份系统遭遇严重bug源于 开源软件 xtrabackup 的一个bug https://bugs.launchpad.net/percona-xtrabackup/bug/722638之前我们的大规模部署都没有遇到这问题。在做计数器转mysql 后,我们部署了备份系统,屡屡备份失败,于是决定彻…

[html] 能否做到禁止打印页面?如果可以那要怎么做?

[html] 能否做到禁止打印页面?如果可以那要怎么做? document.onbeforeprint function(){ return false; };个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一…

laydate时间控件有时候无效_新角度,如何无效没用地听课

嗨喽,大家好。这一期我想向大家展示一下如何无效地听课。1.上课的时候,全程集中注意力,每一秒都不能放松,使自己的大脑保持高度紧张中。我们这么年轻,精神充沛得很,只要累不死就往死里学。 2.下课的时候也不…

[html] 跨标签页的通讯方式有哪些

[html] 跨标签页的通讯方式有哪些 iframe document.name postMessage个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

让IE和Firefox(包括chrome)浏览器默认产生滚动条的滚动槽

html{overflow-y:scroll;}转载于:https://www.cnblogs.com/yuchav/archive/2011/10/19/2217652.html

Nike Air Jordan Sneakers

http://blog.tangcs.com/2009/05/27/nike-air-jordan-sneakers/转载于:https://www.cnblogs.com/WarrenTang/articles/1490574.html

anaconda python删除pyltp_Anaconda使用

Anaconda 是什么?Anaconda 是一个可用于科学计算的 Python 发行版,支持 Linux、Mac、 Windows系统,内置了常用的科学计算包。它解决了官方 Python 的两大痛点。第一:提供了包管理功能,Windows 平台安装第三方包经常失败…

warning: format not a string literal and no format arguments

在学习Object-c的时候,按着书上的代码出现“warning: format not a string literal and no format arguments”; 虽然是个警告,但是看着很烦人,记录下处理方法。 NSString* string"strings"; NSLog(string,nil); 这样就…

[html] websocket和http2有什么区别?http2能取代websocket吗?为什么?

[html] websocket和http2有什么区别?http2能取代websocket吗?为什么? 按照OSI网络分层模型,IP是网络层协议,TCP是传输层协议,而HTTP是应用层的协议。在这三者之间,SPDY和WebSocket都是与HTTP相…

gc日志怎么看_你应该怎么监控Kafka?

监控 Kafka,历来都是个老大难的问题。无论是在我维护的微信公众号,还是 Kafka QQ群里面,大家问得最多的问题,一定是 Kafka 的监控。大家提问的内容看似五花八门,但真正想了解的,其实都是监控这点事&#xf…

[html] websocket可以携带cookie吗?为什么?如果可以,怎样做到呢?

[html] websocket可以携带cookie吗?为什么?如果可以,怎样做到呢? websocket 是TCP/IP层的链接,而cookie是应用层HTTP协议的东西,因此不能。除非websocket在浏览器不支持的情况下用的降级方案。个人简介 我是歌谣,欢迎…

IE下var丢失造成的错误

一个朋友问了一个js问题, 一段看不出有任何问题的代码, 在ie下报错:”object doesn’t support this property or method”. 1. function foo(obj) {2. productTree obj.toString();3. document.getElementById(productTree).innerHTML productTree;4. }开始, 还以为错…

c语言 二进制输出_收藏!C语言入门基础知识大全

C语言中的逻辑值只有两个:真(true)和假(flase)。用非零代表真,用零代表假。因此,对于任意一个表达式,如果它的值为零,就代表一个假值,如果它的值为非零,就代表一个真值。只要值不是零&#xff0…

机器学习算法与Python实践之(七)逻辑回归(Logistic Regression)

http://blog.csdn.net/zouxy09/article/details/20319673 机器学习算法与Python实践之(七)逻辑回归(Logistic Regression) zouxy09qq.com http://blog.csdn.net/zouxy09 机器学习算法与Python实践这个系列主要是参考《机器学习实战…

[html] websocket握手成功会返回一个干什么状态吗?是200吗

[html] websocket握手成功会返回一个干什么状态吗?是200吗 WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。在握手阶段借用http协议传输,建立连接后采用TCP协议传输。101状态码:切换协议 请求者已…

SecureCRT 中文乱码问题

1、修改远程linux机器的配置 [rootrhel ~]#vi /etc/sysconfig/i18n 把LANG改成支持UTF-8的字符集 如: LANG”zh_CN.UTF-8″ 或者是 LANG”en_US.UTF-8″ 本文修改为后者 2、修改Secure CRT的Session Options Options->Session Options->Appearance->Fo…

[html] 切页面时,每次都动手刷新看效果很麻烦,如果要让你写一个实时刷新预览的工具你该怎么写?

[html] 切页面时,每次都动手刷新看效果很麻烦,如果要让你写一个实时刷新预览的工具你该怎么写? node包http, scoket.io建立服务静态页面增加webSocket,服务器推送后执行刷新页面fs包,fs.watch 监听静态页面&#xff0c…

python什么时候用eval_Python:eval的妙用和滥用

eval()函数十分强大,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果。 so,结合math当成一个计算器很好用。 其他用法,可以把list,tuple,dict和string相互转化。见下例子: a "[[1,2], [3,4], […

[MM9]复制格式的快捷操作

选中一个节点X,CTRLSHITFTSPACE,获取该节点的格式。按下CTRL,依次点击其它节点,可以把节点X的格式复制到所点选的节点。松开CTRL,点击空白区域,释放该格式。转载于:https://www.cnblogs.com/jjliu/archive/…

Response.Redirect ,Server.Excute和Server.Transfer区别详解

Response.Redirect 简单地发送一条消息到浏览器,告诉浏览器定位到另一个页面。你可以使用下面的代码将用户引导到另一个页面: Response.Redirect("WebForm2.aspx") 或者 Response.Redirect("http://www.cnnas.com/") Server.Transfe…