python基礎知識のリストの加算、乗算
9071 ワード
python基礎知識のリストの加算、乗算
リストの加算
加算演算子によってリストを接続し、加算演算子によって文字列を接続することもできますが、リストと文字列を接続することはできません.
リストの乗算
数値xにリストを乗じて新しいリストを生成します.すなわち、元のリストはx回繰り返されます(文字列もそうです).
空のリスト[]は何もないことを示します.初期化Noneは「コンテンツなし」を表しますが、複数の要素を占有するスペースを作成する必要があります.
ケース例
文字からなるボックスを印刷します.ボックスは画面上で中央に位置し、ユーザーが入力した文に基づいて自動的にサイズを調整します.ケース1:
結果:
ケース2:
結果:
リストの加算
加算演算子によってリストを接続し、加算演算子によって文字列を接続することもできますが、リストと文字列を接続することはできません.
>>> [1,2,3]+[4,5,6]
[1, 2, 3, 4, 5, 6]
>>> 'hello,'+'world!'
'hello,world!'
>>> [1,2,3]+'hello'
>>> [1,2,3]+'hello'
Traceback (most recent call last):
File "" , line 1, in
[1,2,3]+'hello'
TypeError: can only concatenate list (not "str") to list
>>>
リストの乗算
数値xにリストを乗じて新しいリストを生成します.すなわち、元のリストはx回繰り返されます(文字列もそうです).
>>> 'python'*3
pythonpythonpython'
>>>[31]*3
[31, 31, 31]
>>>
空のリスト[]は何もないことを示します.初期化Noneは「コンテンツなし」を表しますが、複数の要素を占有するスペースを作成する必要があります.
>>> result=[None]*4
>>> result
[None, None, None, None]
>>>
ケース例
文字からなるボックスを印刷します.ボックスは画面上で中央に位置し、ユーザーが入力した文に基づいて自動的にサイズを調整します.ケース1:
#
sentence=raw_input('sentence:')
screen_width = 80
text_width = len(sentence)
box_width = text_width + 6
left_margin = (screen_width - box_width)//2
print
print ' '*left_margin+ '+' + '_' * (box_width-2) + '+'
print ' '*left_margin+ '|' +' '* (box_width-2) + '|'
print ' '*left_margin+ '|' + (box_width-text_width-2)//2*' '+sentence +(box_width-text_width-2)//2*' '+ '|'
print ' '*left_margin+ '|' +' '* (box_width-2) + '|'
print ' '*left_margin+ '+' + '_' * (box_width-2) + '+'
print
結果:
>>> ================================ RESTART ================================
>>>
sentence:Where are you ?
+___________________+
| |
| Where are you ? |
| |
+___________________+
>>>
>>> ================================ RESTART ================================
>>>
sentence:do you know you are a bad man?
+__________________________________+
| |
| do you know you are a bad man? |
| |
+__________________________________+
>>>
ケース2:
#
sentence=raw_input('sentence:')
screen_width = 80
text_width = len(sentence)
box_width = text_width + 6
left_margin = (screen_width - box_width)//2
print
print ' '*left_margin+ '+' + '_' * (box_width-2) + '+'
print ' '*(left_margin+(box_width-text_width-2)//2)+ '|' +' '* text_width + '|'
print ' '*(left_margin+(box_width-text_width-2)//2)+ '|' +sentence + '|'
print ' '*(left_margin+(box_width-text_width-2)//2)+ '|' +' '* text_width + '|'
print ' '*left_margin+ '+' + '_' * (box_width-2) + '+'
print
結果:
>>> ================================ RESTART ================================
>>>
sentence:Where are you ?
+___________________+
| |
|Where are you ?|
| |
+___________________+
>>> ================================ RESTART ================================
>>>
sentence:Do you know you are a bad man?
+__________________________________+
| |
|Do you know you are a bad man?|
| |
+__________________________________+
>>>