リスト

# 5人の点数の合計点・平均点を表示

print('5人の合計点と平均点を求めます。')

tensu1 = int(input('1番の点数:'))
tensu2 = int(input('2番の点数:'))
tensu3 = int(input('3番の点数:'))
tensu4 = int(input('4番の点数:'))
tensu5 = int(input('5番の点数:'))

total = 0
total += tensu1
total += tensu2
total += tensu3
total += tensu4
total += tensu5

print(f'合計は{total}点です。')
print(f'平均は{total / 5}点です。')

C:>python xxx.py
5人の合計点と平均点を求めます。
1番の点数:80
2番の点数:60
3番の点数:75
4番の点数:30
5番の点数:50
合計は295点です。
平均は59.0点です。

# 二つのリストの等価性と同一性を判定

lst1 = [1, 2, 3, 4, 5]
lst2 = [1, 2, 3, 4, 5]

print(f'lst1 : {lst1}')
print(f'lst2 : {lst2}')

print(f'lst1 == lst2 : {lst1 == lst2}')
print(f'lst1 is lst2 : {lst1 is lst2}')

C:>python xxx.py
lst1 : [1, 2, 3, 4, 5]
lst2 : [1, 2, 3, 4, 5]
lst1 == lst2 : True
lst1 is lst2 : False

# リストの全要素を走査(要素数を事前に取得)

x = ['John', 'George', 'Paul', 'Ringo']

for i in range(len(x)):
    print(f'x[{i}] = {x[i]}')

C:7>python xxx.py
x[0] = John
x[1] = George
x[2] = Paul
x[3] = Ringo

# リストの全要素をenumerate関数で走査

x = ['John', 'George', 'Paul', 'Ringo']

for i, name in enumerate(x):
    print(f'x[{i}] = {name}')

C:>python xxx.py
x[0] = John
x[1] = George
x[2] = Paul
x[3] = Ringo

# リストの全要素をenumerate関数で走査(1からカウント)

x = ['John', 'George', 'Paul', 'Ringo']

for i, name in enumerate(x, 1):
    print(f'{i}番目 = {name}')

C:>python xxx.py
1番目 = John
2番目 = George
3番目 = Paul
4番目 = Ringo

# リストの全要素を走査(インデックス値を使わない)

x = ['John', 'George', 'Paul', 'Ringo']

for i in x:
    print(i)

C:>python xxx.py
John
George
Paul
Ringo

# 点数を読み込んで合計点・平均点を表示(その1)

print('合計点と平均点を求めます。')
number = int(input('学生の人数:'))

tensu = [None] * number

for i in range(number):
    tensu[i] = int(input(f'{i + 1}番の点数:'))

total = 0
for i in range(number):
    total += tensu[i]

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
学生の人数:5
1番の点数:95
2番の点数:80
3番の点数:60
4番の点数:75
5番の点数:50
合計は360点です。
平均は72.0点です。

# 点数を読み込んで合計点・平均点を表示(その2:エラー)

print('合計点と平均点を求めます。')
number = int(input('学生の人数:'))

tensu = [None] * number

for i, point in enumerate(tensu):
    point = int(input(f'{i + 1}番の点数:'))

sum = 0
for i in range(number):
    sum += tensu[i]

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
学生の人数:3
1番の点数:100
2番の点数:80
3番の点数:75
Traceback (most recent call last):
File “C:\xxx.py”, line 13, in
sum += tensu[i]
TypeError: unsupported operand type(s) for +=: ‘int’ and ‘NoneType’

# 点数を読み込んで合計点・平均点を表示(その3:enumerateで走査して合計を求める)

print('合計点と平均点を求めます。')
number = int(input('学生の人数:'))

tensu = [None] * number

for i in range(number):
    tensu[i] = int(input(f'{i + 1}番の点数:'))

total = 0
for i, point in enumerate(tensu):
    total += point                       # iの値は不要

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
学生の人数:5
1番の点数:90
2番の点数:80
3番の点数:70
4番の点数:60
5番の点数:50
合計は350点です。
平均は70.0点です。

# 点数を読み込んで合計点・平均点を表示(その4:inで走査して合計を求める)

print('合計点と平均点を求めます。')
number = int(input('学生の人数:'))

tensu = [None] * number

for i in range(number):
    tensu[i] = int(input(f'{i + 1}番の点数:'))

total = 0
for point in tensu:
    total += point

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
学生の人数:3
1番の点数:90
2番の点数:80
3番の点数:55
合計は225点です。
平均は75.0点です。

# 点数を読み込んで合計点・平均点を表示(その5:sum関数を使って合計を求める)

print('合計点と平均点を求めます。')
number = int(input('学生の人数:'))

tensu = [None] * number

for i in range(number):
    tensu[i] = int(input(f'{i + 1}番の点数:'))

total = sum(tensu)

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
学生の人数:3
1番の点数:100
2番の点数:80
3番の点数:95
合計は275点です。
平均は91.66666666666667点です。

# 人数と点数を読み込んで合計点・平均点を表示

print('合計点と平均点を求めます。')
print('注:"End"で入力終了。')

number = 0
tensu = []                  # 空リスト

while True:
    s = input(f'{number + 1}番の点数:')
    if s == 'End':
        break
    tensu.append(int(s))    # 末尾に追加
    number += 1

total = sum(tensu)

print(f'合計は{total}点です。')
print(f'平均は{total / number}点です。')

C:>python xxx.py
合計点と平均点を求めます。
注:”End”で入力終了。
1番の点数:90
2番の点数:8
3番の点数:80
4番の点数:50
5番の点数:85
6番の点数:End
合計は313点です。
平均は62.6点です。

# 人数と点数を読み込んで最低点・最高点を表示

print('最低点と最高点を求めます。')
print('注:"End"で入力終了。')

number = 0
tensu = []                  # 空リスト

while True:
    s = input(f'{number + 1}番の点数:')
    if (s == 'End'):
         break
    tensu.append(int(s))    # 末尾に追加
    number += 1

minimum = maximum = tensu[0]
for i in range(1, number):
    if tensu[i] < minimum: minimum = tensu[i]
    if tensu[i] > maximum: maximum = tensu[i]

print(f'最低点は{minimum}点です。')
print(f'最高点は{maximum}点です。')

C:>python xxx.py
最低点と最高点を求めます。
注:”End”で入力終了。
1番の点数:90
2番の点数:80
3番の点数:50
4番の点数:95
5番の点数:50
6番の点数:End
最低点は50点です。
最高点は95点です。

# 人数と点数を読み込んで最低点・最高点を表示(その2:組込み関数を利用)

print('注:"End"で入力終了。')

number = 0
tensu = []                  # 空リスト

while True:
    s = input(f'{number + 1}番の点数:')
    if (s == 'End'):
         break
    tensu.append(int(s))    # 末尾に追加
    number += 1

minimum = min(tensu)
maximum = max(tensu)

for i in range(1, number):
    if tensu[i] < minimum: minimum = tensu[i]
    if tensu[i] > maximum: maximum = tensu[i]

print(f'最低点は{minimum}点です。')
print(f'最高点は{maximum}点です。')

C:>python xxx.py
注:”End”で入力終了。
1番の点数:85
2番の点数:90
3番の点数:100
4番の点数:End
最低点は85点です。
最高点は100点です。

# 行列の和を求める(行数/列数/値を読み込む)

print('行列の和を求めます。')
height = int(input('行数:'))
width  = int(input('列数:'))

a = [None] * height
for i in range(height):
    a[i] = [None] * width
    for j in range(width):
        a[i][j] = int(input(f'a[{i}][{j}] : '))

b = [None] * height
for i in range(height):
    b[i] = [None] * width
    for j in range(width):
        b[i][j] = int(input(f'b[{i}][{j}] : '))

c = [None] * height
for i in range(height):
    c[i] = [None] * width
    for j in range(width):
        c[i][j] = a[i][j] + b[i][j]

for i in range(height):
    for j in range(width):
        print(f'c[{i}][{j}] = {c[i][j]}')

C:>python xxx.py
行列の和を求めます。
行数:2
列数:2
a[0][0] : 10
a[0][1] : 20
a[1][0] : 30
a[1][1] : 10
b[0][0] : 10
b[0][1] : 20
b[1][0] : 0
b[1][1] : 30
c[0][0] = 20
c[0][1] = 40
c[1][0] = 30
c[1][1] = 40

# リストの生成

list01 = []                   # []
list02 = [1, 2, 3]            # [1, 2, 3]
list03 = ['A', 'B', 'C', ]    # ['A', 'B', 'C']

# 季節名のリスト
list04 = [
    'spring',
    'summer',
    'autumn',
    'winter',
]

list05 = list()               # []              空リスト
list06 = list('ABC')          # ['A', 'B', 'C'] 文字列の個々の文字から生成
list07 = list([1, 2, 3])      # [1, 2, 3]       リストから生成
list08 = list((1, 2, 3))      # [1, 2, 3]       タプルから生成
list09 = list({1, 2, 3})      # [1, 2, 3]       集合から生成

list10 = list(range(7))           # [0, 1, 2, 3, 4, 5, 6]
list11 = list(range(3, 8))        # [3, 4, 5, 6, 7]
list12 = list(range(3, 13, 2))    # [3, 5, 7, 9, 11]

# 要素数が5で全要素が空のリストの生成
list13 = [None] * 5               # [None, None, None, None, None]

print('list01 =', list01)
print('list02 =', list02)
print('list03 =', list03)
print('list04 =', list04)
print('list05 =', list05)
print('list06 =', list06)
print('list07 =', list07)
print('list08 =', list08)
print('list09 =', list09)
print('list10 =', list10)
print('list11 =', list11)
print('list12 =', list12)
print('list13 =', list13)

C:>python xxx.py
list01 = []
list02 = [1, 2, 3]
list03 = [‘A’, ‘B’, ‘C’]
list04 = [‘spring’, ‘summer’, ‘autumn’, ‘winter’]
list05 = []
list06 = [‘A’, ‘B’, ‘C’]
list07 = [1, 2, 3]
list08 = [1, 2, 3]
list09 = [1, 2, 3]
list10 = [0, 1, 2, 3, 4, 5, 6]
list11 = [3, 4, 5, 6, 7]
list12 = [3, 5, 7, 9, 11]
list13 = [None, None, None, None, None]

# 集合の全要素を走査(インデックス値を使わない)

x = {'John', 'George', 'Paul', 'Ringo'}

for i in x:
    print(i)

C:>python xxx.py
George
John
Ringo
Paul

# 1からnまでの和を求める(sum関数を利用)

print('1からnまでの和を求めます。')
n = int(input('nの値:'))

total = sum(range(1, n + 1))			# 1からnまでの和を求める

print(f'1から{n}までの和は{total}です。')

C:7>python xxx.py
1からnまでの和を求めます。
nの値:5
1から5までの和は15です。

# タプルの全要素を走査(要素数を事前に取得)

x = ('John', 'George', 'Paul', 'Ringo')

for i in range(len(x)):
    print(f'x[{i}] = {x[i]}')

C:>python xxx.py
x[0] = John
x[1] = George
x[2] = Paul
x[3] = Ringo

# タプルの全要素をenumerate関数で走査

x = ('John', 'George', 'Paul', 'Ringo')

for i, name in enumerate(x):
    print(f'x[{i}] = {name}')

C:>python xxx.py
x[0] = John
x[1] = George
x[2] = Paul
x[3] = Ringo

# タプルの全要素をenumerate関数で走査(1からカウント)

x = ('John', 'George', 'Paul', 'Ringo')

for i, name in enumerate(x, 1):
    print(f'{i}番目 = {name}')

C:>python xxx.py
1番目 = John
2番目 = George
3番目 = Paul
4番目 = Ringo

# タプルの全要素を走査(インデックス値を使わない)

x = ('John', 'George', 'Paul', 'Ringo')

for i in x:
    print(i)

C:>python xxx.py
John
George
Paul
Ringo

この記事は役に立ちましたか?

もし参考になりましたら、下記のボタンで教えてください。

関連記事

コメント

この記事へのコメントはありません。