Python100本ノック
スクリプトファイルのエンコーディング指定
1.文法
# coding: エンコーディング名1.サンプル
#-*- coding: utf-8 -*-print('hello')
リストの処理
1. サンプル
# -*- coding: utf-8 -*- 
myArr =["1番目","2番目","3番目"] 
for arr in myArr:     
    print(arr)
2.実行結果
以下のように表示されます。
1番目
2番目
3番目
最大公約数を求める
1.文法
math.gcd() を使います。2.サンプル
#-*- coding:utf-8 -*-import math
a =12
b = 8
print(math.gcd(a, b))
3.実行結果
4 が表示されます変数のカプセル化
1.文法
クラスに、SetterとGetterを作ります。2.サンプル
変数var1が、カプセル化されます。# -*- coding: utf-8 -*-
# define Class
class MyClass():
  # Setter
  def setVar1(self, var1):  
      self.var1 = var1
  # Getter
  def getVar1(self):
      return self.var1 
# Create Instance 
myobj = MyClass()
# 次の方法では、アクセスできなくなる
# myobj.var1()
# 次の方法で、値の設定&取得を行う
myobj.setVar1(10)
print(myobj.getVar1())
10
が出力されます。
3.実行結果
10
が出力されます。
インスタンスのメソッド
1.文法
Classの定義の中に、def で定義する。インスタンスのメソッドの第一引数(self)は、自分自身(インスタンス)を指す。
2.サンプル
# -*- coding: utf-8 -*-
# define Class
class MyClass():
  var = 1 
  def func1(self):
     print('hello') 
# Create Instance 
myobj = MyClass()
myobj.func1()
3.実行結果
helloが出力されます。
Python リスト要素を数えたり、反転したり
こんな感じのソースです。
a = ['1','2','3','4']
# 要素の数を出力
print (len(a))
# 要素の中の特定の値の個数を出力
print (a.count('3'))
# 要素を逆順にソート
a.reverse()
# 出力
for x in a:
print (x)
# 要素をソート
a.sort()
# 出力
for x in a:
print (x)
Python オプション引数
1.文法
オプション引数は、引数の値が指定されていない場合に利用される値。関数名(引数=オプション引数) で指定する。
2.サンプル
## coding: utf-8# オプション引数の例
def function1(x=2):
return x*2 ;
print(function1()) ;
print(function1(3)) ;
3.実行結果
4 6 が出力されます。ファイルを逆順に出力する
file_read_backwardsモジュールを利用します1.インストール
pip install file_read_backwards
2. サンプルデータ(sample.csv)
d
c
b
a
3. サンプルプログラム
from file_read_backwards import FileReadBackwards
with FileReadBackwards("sample.csv", encoding="utf-8") as frb:
    for l in frb:
         print(l)
4. 実行結果
a
b
c
d
と逆順に表示されました
集合の積を求める
sympy の FiniteSetを利用してみましょう こんな感じです。
>>> from sympy import FiniteSet
>>> s = FiniteSet(1,2)
>>> t = FiniteSet(2,3)
>>> s.intersect(t)
{2}
For の例
0から10までの和の例です
こんな感じでしょうか
# Forの例
# 0から10までの和
total = 0
for i in range(1,11):
total = total + i
print(total)
PR
    