Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 3 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,3 @@
# python_challenge
Liaroのpython_challengeのページです。

## 手順
1. このレポジトリを`fork`して、自分用のディレクトリを作成して下さい。ディレクトリ名は自分の名前にしてください。
2. 作成したディレクトリ直下にIPython Notebookを作ってください。ファイル名は自分の名前にしてください。
3. 作成したディレクトリ直下にREADME.mdを作成してください。そのファイルに名前、大学名、専攻、今までの開発経験、中期的な目標を書いて下さい。
4. 以下の課題を作成したnotebook内で実装してください。
5. Liaro/python_challengeレポジトリのmasterブランチにプルリクエストを送ってください。

## 課題
1. 1〜10の数字を含むリストを作成してください。
2. 1〜10の偶数のみを含むリストを作成してください。
3. ["a","b","c","d","e","f"]というリストがある前提で{0: 'a', 1: 'b', 2: 'c', 3: 'd', 4: 'e', 5: 'f'}を作成してください。
4. Humanクラスを作成してください。ただし以下のものを実装してください。
- 属性として名前、年齢、性別、身長、体重を持つ
- 年齢をインクリメントするインスタンスメソッドを持つ
- {"山田", 23歳, 男, 170.3cm, 60.2kg}, {"高橋", 30歳, 女, 165.2cm, 46.2kg}の二つのインスタンスを作成
- どちらかの年齢をインクリメント
- 作成したインスタンスをカウントするクラスメソッドを持つ(インスタンス作成時にカウントするように実装してください)
5. numpyを用いて自分で自由に作った二つの行列の積を計算してください。
6. numpyを用いて自分で自由に作った二つのベクトルのcosを計算してください。

## 注意
各課題の上に \#課題1 などのコメントを入れて下さい。


Pythonのバージョンは3.xで実装して下さい。

可能な範囲で良いので、全て解いてください。

また、適宜コメントをつけて、読みやすいコードを心がけてください。
濵田彬文
慶應義塾大学 理工学部 生命情報学科2年
1年の秋の時期にJavaを利用したandroidアプリの開発を経験しながらプログラミングの基礎を学び、2年になってからは学校の授業でc言語、aiの勉強及びその実装のためにpythonを学んでいます。中期的な目標としては、ただ書籍を読んでいるだけでは得られないものもたくさんあるという考えから、インターンなど、実際に学んだことを生かせる場での勉強を目標としています。専攻が生命情報ということもあり、バイオ系のインターンも考えています。
165 changes: 165 additions & 0 deletions assignment.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false,
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n",
"[2, 4, 6, 8, 10]\n",
"{0: 'a', 1: 'b', 2: 'c', 3: 'd', 4: 'e', 5: 'f'}\n"
]
}
],
"source": [
"#課題1\n",
"list = [1,2,3,4,5,6,7,8,9,10]\n",
"print(list)\n",
"\n",
"#課題2\n",
"evens = list[1::2]\n",
"print(evens)\n",
"\n",
"#課題3\n",
"alphabets = [\"a\",\"b\",\"c\",\"d\",\"e\",\"f\"]\n",
"dict = {}\n",
"for i,n in enumerate(alphabets):\n",
" dict.update({i:n})\n",
" \n",
"print(dict)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"24\n",
"2\n"
]
}
],
"source": [
"#課題4\n",
"class Human:\n",
" counter = 0\n",
" def __init__(self, name, age, sex, height, weight):\n",
" self.n = name\n",
" self.a = age\n",
" self.s = sex\n",
" self.h = height\n",
" self.w = weight\n",
" Human.counter += 1\n",
" \n",
" def increment(self):\n",
" self.a += 1\n",
" \n",
"y = Human(\"山田\",23,\"男\",170.3,60.2)\n",
"t = Human(\"高橋\",30,\"女\",165.2,46.2)\n",
"\n",
"y.increment()\n",
"print(y.a)\n",
"\n",
"print(Human.counter)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[ 9 12 15]\n",
" [14 19 24]\n",
" [19 26 33]]\n"
]
}
],
"source": [
"#課題5\n",
"import numpy as np\n",
"\n",
"A = np.array([[1,2],[2,3],[3,4]])\n",
"B = np.array([[1,2,3],[4,5,6]])\n",
"print(np.dot(A,B))"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"cos = 0.861118704783965\n"
]
}
],
"source": [
"#課題6\n",
"import numpy as np\n",
"\n",
"A = np.array([1,2,3])\n",
"B = np.array([-1,9,6])\n",
"\n",
"a = np.linalg.norm(A)\n",
"b = np.linalg.norm(B)\n",
"c = np.dot(A,B)\n",
"\n",
"print(\"cos = {}\".format(c/(a*b)))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.0"
}
},
"nbformat": 4,
"nbformat_minor": 2
}