こんにちは!しなもんです。
データ分析でpythonを使用しており、学習した内容を備忘録としてまとめます。
ちなみにプログラミングのスキルチェックができるpaizaというプラットフォームでランク「B級」になります。将来的にはkaggleでコンペにチャレンジしていきたいと考えております。少しでもみなさんのお役に立てると幸いです。
- pythonを初めて学習する方
- 学習した内容を再確認したい方
入力
引数に文字列または数値を入力する。返り値は文字列になる。
num=input()
print(num) //print(引数)
複数の値を入力する。
「4 5 88 9 5」のような場合、
num = input().rstrip().split()
値が文字列となってリスト化される。
int型として扱いたいなら以下のようになる。
num = list(map(int, input().rstrip().split()))
それぞれの変数に値を代入したい場合
n,m = input().rstrip().split()
複数行の値を入力にしたい場合
num = [i for i in sys.stdin.readlines()]
入力の行数が一行目に指定されている場合
n=int(input())
num=[input() for i in range(n)]
複数の値、複数行の値を入力する場合
import sys
num=[i.rstrip() for i in sys.stdin.readlines()]
入力の行数を1行目で指定する場合
n=int(input())
num=[input().rstrip().split() for i in range(n)]
出力
print()を使って値を出力します。
書式:print(値1,値2, … ,Sep="区切り文字",end="行末文字")
a=100
b=200
c=300
abc=a+b+c
print(a,b,c,Sep=",",end="/以上")
print(abc)
数値を出力するだけでなく、文の中に数値を埋め込んで表示することがよくある。
format()を利用する場合は以下のような記述になる。
name="Tom"
age="26"
point="100"
s="{}選手、年齢{}、得点{}"
text=s.format(name,age,point)
print(text)
引数の順番を指定する場合
name="Tom"
age="26"
point="100"
s="{2}選手、年齢{0}、得点{1}"
text=s.format(age,point,name)
print(text)
python3.6からfプリフィックスを使って文字列を埋め込むことができる。
name="Tom"
age="26"
point="100"
text=f"{name}選手、年齢{age}、得点{point}"
print(text)
数値の書式設定。
{値:書式}で型指定や3桁区切り、小数点以下の桁数などを指定する。
3桁区切りする場合
tokyo=1234000
kyoto=56789
print(f"東京{tokyo:,},京都{kyoto:,}")
小数点以下を桁数指定する場合
length=10.55
height=5.78
print(f"長さ{length:.1f}m,高さ{height:.0f}m")
値の位置揃えをする場合
num1=123.4
num2=56.9
num3=4069.1
print(f"{num1:>10.1f}")
123.4
print(f"{num2:>10.1f}")
56.9
print(f"{num3:>10.1f}")
4069.1