python整数序列求和_Python从菜鸟到高手(14):序列的加法和乘法
1 序列的加法
序列也可以相加,但要注意,這里的相加,并不是相對(duì)應(yīng)的序列元素值相加,而是序列首尾相接。由于字符串屬于字符序列,所以字符串相加也可以看做是序列相加。但一個(gè)字符串不能和一個(gè)序列相加,否則會(huì)拋出異常。
本例演示了兩個(gè)序列之間的加法,以及序列和字符串之間相加后會(huì)拋出異常。
print([1,2,3] + [6,7,8]) # 運(yùn)行結(jié)果:[1,2,3,6,7,8]
print("Hello" + " world") # 運(yùn)行結(jié)果:Hello world
print([1,2,3] + ["hello"]) # 把字符串作為序列的一個(gè)元素,運(yùn)行結(jié)果:[1,2,3,"hello"]
# 運(yùn)行結(jié)果:[1,2,3,'h', 'e', 'l', 'l', 'o']
print([1,2,3] + ['h', 'e', 'l', 'l', 'o'])
print([1,2,3] + "hello") # 拋出異常,序列不能和字符串直接相加
程序運(yùn)行結(jié)果如下圖所示。
我們可以看到,上面代碼中運(yùn)行最后一條語句會(huì)拋出異常,原因是序列和字符串相加。而要想讓“hello”和序列相加,需要將“hello”作為序列的一個(gè)元素,如["hello"],然后再和序列相加。兩個(gè)相加的序列元素的數(shù)據(jù)類型可以是不一樣的,例如,上面代碼中第3行將一個(gè)整數(shù)類型的序列和一個(gè)字符串類型的序列相加,這兩個(gè)序列會(huì)首尾相接連接在一起。
2. 序列的乘法
如果用數(shù)字n乘以一個(gè)序列會(huì)生成新的序列,而在新的序列中,原來的序列將被重復(fù)n次。如果序列的值是None(Python語言內(nèi)建的一個(gè)值,表示“什么都沒有”),那么將這個(gè)序列與數(shù)字n相乘,假設(shè)這個(gè)包含None值的序列長(zhǎng)度是1,那么就會(huì)產(chǎn)生占用n個(gè)元素空間的序列。
本例通過字符串與數(shù)字相乘,復(fù)制字符串,通過將序列與數(shù)字相乘,復(fù)制序列。
# 字符串與數(shù)字相乘,運(yùn)行結(jié)果:hellohellohellohellohello
print('hello' * 5)
# 序列與數(shù)字相乘,運(yùn)行結(jié)果:[20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
print([20] * 10)
# 將值為None的序列和數(shù)字相乘,運(yùn)行結(jié)果:[None, None, None, None, None, None]
print([None] * 6)
程序運(yùn)行結(jié)果如下圖所示。
本例會(huì)利用序列的乘法生成一個(gè)611二維的序列,序列的每一個(gè)元素是一個(gè)一維的序列,序列中的每一個(gè)元素是空格或星號(hào)(),二維序列中的元素,會(huì)形成一個(gè)由星號(hào)(*)組成的正三角形。
spaceNum = 5 # 表示每一行星號(hào)一側(cè)最多的空格數(shù),本例是5
i = 1
lineSpaceNum =spaceNum # 表示當(dāng)前行的前后空格數(shù)
triangle = [] # 二維列表
# 開始生成三角形
while lineSpaceNum >= 0:
# 生成星號(hào)左側(cè)空格序列
leftSpaceList = [' '] * lineSpaceNum
# 生成星號(hào)列表
starList = ['*'] * (2 * i - 1)
# 生成星號(hào)右側(cè)空格序列
rightSpaceList = [' '] * lineSpaceNum
# 生成每一行的序列
lineList = leftSpaceList + starList + rightSpaceList
triangle.append(lineList)
lineSpaceNum -= 1
i += 1
for line in triangle:
print(line)
程序運(yùn)行結(jié)果如下圖所示。
總結(jié)
以上是生活随笔為你收集整理的python整数序列求和_Python从菜鸟到高手(14):序列的加法和乘法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据库恢复相关知识笔记
- 下一篇: python判断ip能否ping通_使用