ソースコード
#coding:utf-8
#list join
list1 = ["a","b","c"]
list2 = [1,2,3]
list3 = list1 + list2
print(list3)
input()
#listの並べ替え、sort
import os
import random
os.system("clear")
lista = []
listb = []
for i in range(20):
lista.append(random.randint(3,50))
listb.append(random.randint(40,80))
#昇順に並べ替え、小さい順
print(f'元のリスト: {lista}')
lista.sort()
print(f'昇順に並べ替え:{lista}\n')
#降順に並べ替え、大きい順
print(f'元のリスト: {listb}')
listb.sort(reverse=True)
print(f'降順に並べ替え:{listb}\n')
#文字列ソート
def myFunc(e):
return len(e)
fruits = ['kiwi', 'orange', 'banana', 'apple']
print(f'元のリスト: {fruits}')
fruits.sort()
print(f'昇順: {fruits}')
fruits.sort(reverse=True)
print(f'降順: {fruits}')
fruits.sort(key=myFunc)
print(f'文字列長さ順:{fruits}')
#listの応用例の1:成績の統計
list1=[]
for i in range(30):
list1.append(random.randint(1,100))
print(list1)
#最高の点数とその人数、最低の点数、平均点、不可の人数、
print(f'最高の点数={max(list1)}\n')
print(f'最低の点数={min(list1)}\n')
maxCnt=0
ngCnt=0
maxP = max(list1)
ngP = 59
maxlist = []
nglist = []
number=0
for x in list1:
number += 1
if x == maxP:
maxCnt += 1
maxlist.append(number)
if x <= ngP:
ngCnt += 1
nglist.append(number)
print(f'最高点を得た人数={maxCnt} その学生番号リスト={maxlist}\n')
print(f'不合格人数={ngCnt} その学生番号リスト={nglist}\n')
total=sum(list1)
avg = total/len(list1)
print(f'平均点数={avg}\n')
from statistics import mean
print(f'平均点数={mean(list1)}\n')