えくすとらんのブログ: ゆる〜いプログラミング pyてょn
ラベル ゆる〜いプログラミング pyてょn の投稿を表示しています。 すべての投稿を表示
ラベル ゆる〜いプログラミング pyてょn の投稿を表示しています。 すべての投稿を表示

ゆる〜いプログラミング pyてょn3 その7

第7回 class

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

classは分類という解釈でいいのかなぁ

class Cat:
    name = "tama"
    esa = "matatabi"
    iro = "shiro"

Cat.name とすると tama
Cat.esa とすると matatabi
Cat.iro とすると shiro

と出てくる

Catクラスのできあがり

しかしclassの機能?にはもっと便利な使い方があるみたい

まずは書式

class □□:
    def __init__(self,◯,△):
        self.◯ = ◯
        self.△ = △

このかたちは大体決まった書き方のようなので覚えてみた

たとえば 猫classの中にtama あるいは doraという名前の猫がいて

その猫の餌や色などの情報を作りたい場合...

class Cat:
    def __init__(self,esa,iro):
        self.esa = esa
        self.iro = iro

とする(def __init__(self)のあとに餌や色の名前を入れる)

このあと

これは、猫tamaの情報ですよということで

tama = Cat("matatabi","shiro")

とする(ザックリですがメソッドでインスタンスを生成というらしい)

これでtama.esaとすると

'matatabi'

tama.iroとすると

'shiro'

とでてくる

このクラスの設計図を使って他の猫も同じように作っていける

今度は、猫doraの情報

dora = Cat("catfood","kuro")

として

dora.esa

とすると

'catfood'

と出てくる

dora.iro

とすると

'kuro'

が出てくる

インスタンスを生成すると他にもどんどん名前を追加していけるようだ

さらにclass内に関数を使えば処理も加えることができそう...








ゆる〜いプログラミング pyてょn3 その6

第6回 while

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

whileも繰り返しの処理をする時につかうようだ

a = 0 (aは0)
while(まわせ!) a < 10(aが10より小さい時) :(ならば)
    a += 1(aを1づつ増やせ!)
  print(a)(aを出力)

a = 0
while a < 10:
    a += 1
    print(a)

とすると

1
2
3
4
5
6
7
8
9
10

と出てくる

"〜の時"で使うことができるのでfor文とちょっと使い所が違うような気がする







ゆる〜いプログラミング pyてょn3 その5

第5回 入力

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

ターミナルに問題をだして答えを入力してもらうにはどうしたら

よいだろうか調べてみた

どうやらinput()を使うといいらしい

()の中に文字をいれることができるようだ

a = input("お名前は?:")

とすると a に答えを代入することができるようだ

代入されたのが文字なのか数字なのかが結構重要だったりする

aの値はもちろんあとで文字や数字に切り替えられるようだけど

a = int(input("年齢は?:"))

とするとインプットは最初から数字として認識されるようだ

一行にスペース区切りで複数の答えを入力したい場合は

input()のあとに .split(" ")をつけるとよいようだ

a = input("スリーサイズをスペース区切りで入力してください: ").split(" ")

とすると

83 58 83

等とスペース区切で入力をしてもらうことができるようだ

ちなみに答えは文字として認識。listとしてでてくるので注意して使っている






ゆる〜いプログラミング pyてょn3 その4

第4回 if文

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

ifは "もし” だそうです

なので 

もし ◯◯ ならば 
    こうする という文を考えた

a = 1   
if a == 1:
    print("yes")

上の場合だと

a = 1 (aは1)
if(もし)a == 1(aが1) :(ならば)
    print("yes") (yesを出力)

演算子(< > == 等(他にも色々ある)で比較)

a > 1(aは1より大きい)1を含める場合は >=
a < 1(aは1より小さい)1を含める場合は <=
a == 1(aと1は同じ)   #a = 1ではないので注意

ということらしい

if文のあとさらに条件を付ける場合は

elif ◯◯ :
 
と加えていく

a = 3
if a == 3:
    print("aは3だよ")
elif a == 1:
    print("aは1だよ")

それ以外は

else:

と加える

a = 3
if a == 3:
    print("aは3だよ")
elif a == 1:
    print("aは1だよ")
else:
    print("それ以外だよ")

ということらしい


このプログラムではaは3に固定されていますが
ランダムな数字を代入する場合やif文前に違う数字を代入する場合は
aの値が変えられるので分岐させることができるとおもいます

a = "cat"
if a == "cat":
    print("neko")

文字でも使えるようです


ゆる〜いプログラミング pyてょn3 その3

第3回 for文


とりあえずpythonを起動 

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

for文はループを書く時につかうようだ

とりあえず....

for ◯ in △:

◯は箱(名前によくiやjを使う)

◯の中に△を入れて1個づつ取り出して処理するよってことらしい

箱には文字でも数字でもはいるようだ

listを作っておいて箱に入れて1個づつ取り出して使うような

使い方もあるらしい



cat = ["tama","shiro","nyan"]
for i in cat:
    i+"kawaii"

とすると

'tamakawaii'
'shirokawaii'
'nyankawaii'

とでてくる


range()は数字の範囲を指定できる関数

for文でループの回数を決める時によく使っている

for i in range(1,11):
    print(i)

とすると

1
2
3
4
5
6
7
8
9
10

とでてくる

range(1,11)だと1~10まで表示される

range(1,10)だと1~9まで表示される

最後の数字は1足した物を使うと思ったとおりの出力になりそう

もちろん箱から取り出した数を加工して出すこともできるようだ

for i in range(1,6):
    print("灯油のリッター数は"+str(i) + "缶"+str((i*18))+"Lです")

とすると

灯油のリッター数は1缶18Lです
灯油のリッター数は2缶36Lです
灯油のリッター数は3缶54Lです
灯油のリッター数は4缶72Lです
灯油のリッター数は5缶90Lです

とでてくる









ゆる〜いプログラミング pyてょn3 その2

第2回 print

とりあえずpythonを起動 

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

python3からprintは関数になったらしい

なのでprint()とする

中に文字を書くことができる

文字の場合はシングルコーテーション ’ かダブルコーテーション " で

囲うらしい

print("ハローワールド")でハローワールドが "ターミナル" に出力される

変数や数字も出力できる ので確認の時にやたら使う

前になんとなくつくってみたプログラム


p = "pen"
a = "apple"
print(a + p)
p = "pen"
pi = "pineapple"
print(pi + p)
print(p + pi + a + p)



歌いながら書いてみると面白いかもしれない...

あ 変数p2度も....^^;


ゆる〜いプログラミング pyてょn3

第一回 数 文字

自分のおさらいをなんとなく書いてみる *内容はアマチュアなので保証しない

python3の場合,数と文字は明確に区別される

数を使いたいときには int()

文字を使いたいときには str() を宣言する

最初の入力で数か文字か決まるらしい

a = "hello" ←文字
b = 1 ←数字

a+b
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: must be str, not int

文字と数はたすことが出来ないのでエラーですよとでてくる

a + str(b)
'hello1'

bを文字宣言!

文字と数はエラーのもと....






 久しぶりの更新です 備忘録 使っているarchlinuxにnvidiaのドライバを入れたところドライバがあっていなかったのかxが起動せずこれをアンインストールしたがその後xf86-video-nouveauが入っているにもかかわらずxが起動しなくなったのでarchwikiにて調...