SlideShare a Scribd company logo
自己紹介
自己紹介
吉海 将太
前職でUnity(C#)、Webアプリ(Python, Docker)、Pepperアプリ(Python)
の開発に携わりました。
今は、Python、GO、Docker、
Appengine, GCE、GKE、K8Sなど
Software Engineer
Kabuku, Inc.
https://www.kabuku.co.jp/
自己紹介
Twitterやってます。@yoshikai_
Mastodonは奈良トドンでファイレクシア鹿でやってます
https://mastodon.nara.jp
最近以下のイベントで登壇しました
Kubernetes Meetup Tokyo #4 at 2017/04/20
golang.tokyo #5 at 2017/04/27
会社説明
今日のターゲット
今日のターゲット
● Python未経験者
● Python初心者
今日のゴール
今日のゴール
● Pythonについてざっくり知ってもらう
● 家に帰ったらPythonを触る
● 履歴書にPythonでの開発経験ありとかけるようになる
今回の流れ
● Pythonについて
○ 特徴や他の言語との比較など
● Pythonを学ぼう
● Pythonで開発しよう
○ 弊社の開発フローを紹介
● 最近のTopic
● ハンズオン
○ Anaconda 使います
○ 勉強会のページにPython3.5って書いてあるんですが 3.6でも大丈夫です
Pythonについて
Pythonの特徴
● 読みやすい文法
● 直感的なオブジェクト指向
● 手続き型のコードによる、自然な表現
● パッケージの階層化もサポートした、完全なモジュール化サポート
● 例外ベースのエラーハンドリング
● 高レベルな動的データ型
● 拡張とモジュールはC/C++で書くのが容易
● 事実上すべてのタスクをこなせる、広範囲に及ぶ標準ライブラリとサードパーティの
モジュール
● 今最も熱い言語
とてもクリーンで読みやすい文法
Pythonの良いところ
● かぎかっこで囲む必要がなかったりと書くの楽
● 読みやすい
● 何をやるにもモジュールがあるので開発効率が最高
Pythonの気になるところ
● 動作速度が遅い
● タブで区切る文法が独特
● 日本語の情報が若干すくない(最近はそうでもない)
● Python2とPython3で互換性がない
● 2バイト文字の扱いが微妙(Python2のみ)
他の言語との比較
他言語との比較
他言語との比較
他言語との比較
Python 事例
● Dropbox
● Pepper
● Google (App Engine)
● Instagram
● Walt Disney
● NASA
Pythonの使い所
● Webアプリの開発
● AI、統計、科学計算
モジュールが豊富で書くのが楽なので、開発スピードが求められる案件に向いている
ただ、C++、Goなどと比べて処理速度や動作速度が劣る場合が多いので、高速な処理
速度が必要な箇所はPython以外を使うと良い
Pythonを学ぼう
オススメの書籍
初心者向け
みんなのPython 第4版(表紙がファンシーでかわいい)
中級者向け
Effective Python (必読)
効率的で優れたプログラムはどのように書けばよいのか、を指南。
ベストプラクティス、ヒント、落とし穴の避け方や達人プログラマのコードなどを紹介し、効
果的な優れたPythonプログラムを書くノウハウをまとめています。
Python Japan http://www.python.jp/
● 和訳ドキュメント
● ニュース
● イベント
● 求人情報
● コミュニティ
最近、Slackのチャンネルが出来ました
http://www.python.jp/news/pythonjp_slack.html
公式ドキュメント
日本語
https://docs.python.jp/3/
英語
https://docs.python.org/3/
知りたいことがあったらまず公式ドキュメントを読もう!
公式チュートリアル
Python チュートリアル
https://docs.python.jp/3/tutorial/index.html
カンファレンス
PyCon JP
PyCon JPは、Pythonユーザが集まり、PythonやPythonを使ったソフトウェアについて
情報交換、交流をするためのカンファレンスです。
実際に手を動かす
WebアプリでもDeepLearningでも何でもあるPythonなら楽しく学習出来ます!
あとは、コードレビューしてくれる人がいると尚良いです。
例:
Webアプリ開発したい! → DjangoやFlask!
DeepLearning ! → TensorFlow, Chainer
強化学習 → ChainerRL
Pythonで開発を始めよう
Python3とPython2
今から始めるならPython3がオススメ
Python2は2020年に終了予定!!(結構先^^;)
何月何日は未定
ただ、一部ライブラリーが2.7系でないと動かないので注意が必要
3と2のコードはだいたい一緒だが、完全互換ではないので後から移行するのは大変
コーディング規約 PEP8
Pythonのコードは基本的にpep8に準拠して書きます。
pep8をチェックするツールが提供されておりCIツールでチェックすることが可能です。
下記のような規約があります。
● 1レベルインデントするごとに、スペースを4つ使いましょう。
● すべての行の長さを、最大79文字までに制限しましょう(弊社ではignore)
● クラスの名前には通常 CapWords 方式を使うべきです
Python開発環境の構築
ANACONDAがオススメ
主要ライブラリをオールインワンでインストール出来て、すぐに開発に取りかかれます
https://www.continuum.io/downloads
Jupyter Notebook
ブラウザから使えるインタラクティブシェル
補完、グラフの表示が出来ます。
ちょっとしたことを試すのに便利です。
オススメのIDE
PyCharmの機能
● コード補完
● pep8準拠の警告表示
● Docker連携
● デバッカー、リモートデバッカー
● DjangoやAppEngineのRun
● Unittest(カバレッジをPythonファイルの行の色で表示)
● 豊富なplugin(Vim)
PyCharm使った開発
● PyCharmが指摘してきた箇所を直しながらコードを書く
○ pep8に違反している箇所など
警告が出てる時
問題ないとき
緑になる
ライブラリーの紹介
ライブラリー
Web系
● Django (フルスタックのフレームワーク)
● Flask (マイクロフレームワーク)
● requests(Httpのクライアントライブラリー
DeepLearning
● TensorFlow
● Caffe
● Chainer (日本製!)
● Keras
ライブラリー
ユニットテスト系
● Nosetest (弊社で使ってます)
● Pytest (テストのレポートがかなり詳細に表示されて便利)
ライブラリーを使う時の注意点
● 最初に標準ライブラリーで実現出来ないか調べる
○ https://docs.python.jp/3/library/
○ 依存関係を増やさないためにも標準ライブラリーを使おう
● 十分にメンテされているライブラリーか?
○ 十分にテストされているか?
○ 更新が止まっているモジュールでバグを踏むと悲惨
○ Pythonのバージョンが上がった場合に動かなくなる可能性がある
弊社の開発フロー
弊社の開発フロー
● git-flowで開発
○ 新規機能をfeature branchにcommit
○ そのfeature branchをdevelopにマージするプルリクエストを作る
○ プルリクエストに対して
■ CIのチェック
■ 人によるコードレビュー
CI (JenkinsかBitbucet pipeline)
弊社の開発フロー
pep8のチェック
Unitテスト
開発用のbranchにpush
$ pep8
$ nosetest --with-coverage
最近のTopic
今流行りのTypeHintsが使えるように!
関数のアノテーションの例
TypeHintsあり
TypeHinstなし
def greeting(name):
return 'Hello ' + name
def greeting(name: str) -> str:
return 'Hello ' + name
Release Python 3.7.0a0
リリース日: 2017/05/15
● 関数に256以上の引数を渡せるように!
● Importエラーが起きた時の表示が分かりやすくなった
https://docs.python.org/3.7/whatsnew/3.7.html
おまけ
Pythonの歴史
名前の由来は、イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイ
ソン』
● 1991年 Python 0.90
● 2010年7月 Python2.7
● 2017年1月 Python3.6
カブクではエンジニアを募集してます!
● サーバーサイドエンジニア
○ Python, Google Cloud Platform
● フロントエンドエンジニア
○ TypeScriptやAngular
https://www.kabuku.co.jp/#jobs
ハンズオン
ターミナルで下記のコマンドを入力してjupyter notebookを起動して下さい
コマンドを実行したディレクトリにファイルが作れるのでファイルが保存できるディレクトリ
で実行して下さい
http://localhost:8888
公式チュートリアルの形式ばらない Python の紹介をやります
https://docs.python.jp/3/tutorial/introduction.html
$ jupyter notebook
演習問題 FizzBuzz
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わり
に「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には
「FizzBuzz」とプリントすること。

More Related Content

What's hot

Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめGoogle Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
Takuya Ueda
 
新人教育と(Javaと)Python
新人教育と(Javaと)Python新人教育と(Javaと)Python
新人教育と(Javaと)Python
7pairs
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
 
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろうGoだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Takuya Ueda
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介
Takuya Ueda
 
Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −
Takuya Ueda
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
Takuya Ueda
 
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現するgoパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現する
Takuya Ueda
 
Cloud functionsの紹介
Cloud functionsの紹介Cloud functionsの紹介
Cloud functionsの紹介
Takuya Ueda
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなし
Takanori Suzuki
 
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
 
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
OMEGA (@equal_001)
 
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみたRubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
 
Git入門
Git入門Git入門
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
You&I
 
Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。
KyutatsuNishiura
 
『自走プログラマー』 が我々に必要だった理由
『自走プログラマー』 が我々に必要だった理由『自走プログラマー』 が我々に必要だった理由
『自走プログラマー』 が我々に必要だった理由
Takayuki Shimizukawa
 
WebAssembly with Go
WebAssembly with GoWebAssembly with Go
WebAssembly with Go
Takuya Ueda
 
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
Takuya Ueda
 
過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ
Shogo Ichinose
 

What's hot (20)

Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめGoogle Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
 
新人教育と(Javaと)Python
新人教育と(Javaと)Python新人教育と(Javaと)Python
新人教育と(Javaと)Python
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
 
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろうGoだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介
 
Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
 
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現するgoパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現する
 
Cloud functionsの紹介
Cloud functionsの紹介Cloud functionsの紹介
Cloud functionsの紹介
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなし
 
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
 
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
 
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみたRubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
 
Git入門
Git入門Git入門
Git入門
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。
 
『自走プログラマー』 が我々に必要だった理由
『自走プログラマー』 が我々に必要だった理由『自走プログラマー』 が我々に必要だった理由
『自走プログラマー』 が我々に必要だった理由
 
WebAssembly with Go
WebAssembly with GoWebAssembly with Go
WebAssembly with Go
 
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
 
過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ
 

Similar to Pythonを始めよう

Pythonを始めよう
Pythonを始めよう Pythonを始めよう
Pythonを始めよう
shouta yoshikai
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
Takuya Nishimoto
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
 
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしようC++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
Study Group by SciencePark Corp.
 
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Takahiro Fujiwara
 
Pythonを始めよう
Pythonを始めようPythonを始めよう
Pythonを始めよう
shouta yoshikai
 
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
Kengo Nakajima
 
PyCon JP 2015 keynote
PyCon JP 2015 keynotePyCon JP 2015 keynote
PyCon JP 2015 keynote
Haruo Sato
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れる
Yusuke Wada
 
Django で始める PyCharm 入門
Django で始める PyCharm 入門Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
 
Introduction of kabepy
Introduction of kabepyIntroduction of kabepy
Introduction of kabepyKenjiro Kosaka
 
LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45
civic Sasaki
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
gree_tech
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPython
Hironori Sekine
 
「Kivyによるアプリケーション開発のすすめ」の勧め
「Kivyによるアプリケーション開発のすすめ」の勧め「Kivyによるアプリケーション開発のすすめ」の勧め
「Kivyによるアプリケーション開発のすすめ」の勧め
Jun Okazaki
 
コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装
IIJ
 
エンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったことエンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったこと
Takao Sumitomo
 
アウトプットのすすめ
アウトプットのすすめアウトプットのすすめ
アウトプットのすすめ
KoichiHirai1
 
PHPUnitでリファクタリング
PHPUnitでリファクタリングPHPUnitでリファクタリング
PHPUnitでリファクタリング
Takako Miyagawa
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
Takayuki Shimizukawa
 

Similar to Pythonを始めよう (20)

Pythonを始めよう
Pythonを始めよう Pythonを始めよう
Pythonを始めよう
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
 
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしようC++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
 
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
 
Pythonを始めよう
Pythonを始めようPythonを始めよう
Pythonを始めよう
 
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
自宅で仕事。安くなってきたGPUインスタンスをParsecで活用しよう。
 
PyCon JP 2015 keynote
PyCon JP 2015 keynotePyCon JP 2015 keynote
PyCon JP 2015 keynote
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れる
 
Django で始める PyCharm 入門
Django で始める PyCharm 入門Django で始める PyCharm 入門
Django で始める PyCharm 入門
 
Introduction of kabepy
Introduction of kabepyIntroduction of kabepy
Introduction of kabepy
 
LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPython
 
「Kivyによるアプリケーション開発のすすめ」の勧め
「Kivyによるアプリケーション開発のすすめ」の勧め「Kivyによるアプリケーション開発のすすめ」の勧め
「Kivyによるアプリケーション開発のすすめ」の勧め
 
コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装コロナ禍の開発勉強会~社内教育ツールの開発と実装
コロナ禍の開発勉強会~社内教育ツールの開発と実装
 
エンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったことエンジニアがプロダクト育成を始めるまでにやったこと
エンジニアがプロダクト育成を始めるまでにやったこと
 
アウトプットのすすめ
アウトプットのすすめアウトプットのすすめ
アウトプットのすすめ
 
PHPUnitでリファクタリング
PHPUnitでリファクタリングPHPUnitでリファクタリング
PHPUnitでリファクタリング
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
 

Pythonを始めよう