pythonの基本的な操作についてまとめます。出力、繰り返し、リスト、辞書、関数、便利な記述法、クラスについてです。
以下の本を参考にしました。
book.mynavi.jp
1:pythonの復習:出力、繰り返し
2:pythonの復習:リスト、辞書など
3:pythonの復習:関数、便利な記述法
4:pythonの復習:classについて
この順番で説明します。
1:pythonの復習:出力、繰り返し
print、input、if、elif、else、pass、for、range、break、continue、変数関数についてです。
grade=2
old=19
print("学部",grade,"年です.",end="")
print("よろしくお願いします")
grade_str=str(grade)
print("学部"+grade_str+"年です.")
print("年齢:{0},学年:{1}".format(old,grade))
print("{first}+{second}={result}".format(first=3,second=2,result=5))
name=input("hello")
number=2
if number%10==0:print("10で割れる")
elif number%5==0:print("5で割れる")
else:print("わからん")
n=5
if n==4:pass
else:print(n)
for a in range(5):print(a,end="")
for a in range(1,6):print(a,end="")
for a in range(1,6,2):print(a,end="")
for a in range(10):
print(a,end="")
if a==3:break
for a in range(5):
print(a,end="")
if a%2==0:continue
print("odd",end="")
a=30
a=a.__add__(5)
print(dir(a))
2:pythonの復習:リスト、辞書など
list、enumerate、del、タプル、辞書、keys、values、itemsなどです。
list1=[1,3,5,7]
for a in list1:
print(a,end="")
list2=["a","b","c"]
for a,b in enumerate(list2):
print(a,b)
a=[1,2,3]
a+=[4,5,6]
print(a[1:3])
print(a[::2])
print(a[1:5:2])
a=[1,2,3,4,5,6]
del a[2]
a={1,2,3,4}
print(1 in a)
b={1,2}
print(a-b)
c={3,4,5}
print(a|c)
print(a&c)
dic={1:11,2:22,3:33}
print(dic[1])
print(list(dic.keys()))
print(list(dic.values()))
print(list(dic.items()))
for a,b in dic.items():print(a,b)
a,b,c=[1,2,3]
print(a,b,c)
3:pythonの復習:関数、便利な記述法
args、lambda、import、map、filter、内包表記などです。
def sumargs(*args):
result=0
for a in args:result+=a
return result
print(sumargs(1,2,3,4,5))
def argsargs(**args):return args
print(argsargs(a=1,b=2,c=3))
print(argsargs(a=12,b=13,c=14))
x=lambda x:x*2
print(x(2))
print(x(3))
list3=[1,2,3,4,5]
x2=lambda x:x**2
print(list(map(x2,list3)))
x3=lambda x:x%2==0
print(list(filter(x3,list3)))
from chainer import Link
from matplotlib import *
data=[i*2 for i in range(5)]
data2=list(map(lambda x:x*2,range(5)))
data3=[i for i in range(5) if i%2==0]
base=[1,2,3]
data4=[(x,y) for x in base for y in base]
data5=[(x,y) for x in base for y in base if x!=y]
4:pythonの復習:classについて
class、__init__、継承、__call__などについてです。
class Student:
def __init__(self,id,score=0):
self.id=id
self.score=score
def setscore(self,score):self.score=score
def getscore(self):return self.score
class Calc:
def __init__(self):self.students=[]
def add(self,student):self.students.append(student)
def ave(self):
result=0
for i in self.students:result+=i.getscore()
result=result/len(self.students)
return result
s1=Student(1,50)
s2=Student(2,60)
s3=Student(3,80)
calc=Calc()
calc.add(s1)
calc.add(s2)
calc.add(s3)
class A:
def printa(self):print("a")
class B:
def printb(self):print("b")
class C:
def printc(self):print("c")
class D(A,B,C):
def printd(self):print("d")
def printall(self):
self.printa()
self.printb()
self.printc()
self.printd()
d=D()
d.printa()
d.printd()
d.printall()
class Game:
def __init__(self):
self.score=100
self.count=3
def start(self):print("start")
class Cardgame(Game):
def __init__(self):
super().__init__()
self.max=53
def next(self):print("next turn")
first=Cardgame()
print(first.score)
print(first.max)
first.next()
class List_practice:
def __init__(self,length):self.list1=[i for i in range(length)]
def __call__(self,number):print([i*number for i in self.list1])
def add(self,number):self.list1.append(number)
mylist=List_practice(5)
mylist(2)
print(mylist.list1)
pythonの復習をしました。
アドバイス、改善点、質問などがあればお願いします。