SlideShare une entreprise Scribd logo
1  sur  45
Télécharger pour lire hors ligne
のすゝめ 
こく
のすゝめ 
coins-LTに来るような人は 、 
みんなPython知ってるよね。 
こく
のすゝめ 
もっと楽しいことしたいよね 
うんうんうんうん 
美遊さんまぢかわいい 
こく
ワンライナー 
のすゝめ 
こく
$ whoami 
こく(@cocu_tan) 
バトルしないプログラマー 
COINS-Project(鯖管) 
SVGおじさん(過去形) 
フルタスック大学 闇Python科 機械学習専攻
ワンライナーとは 
プログラムを1行で書く技工プログラミング 
使い捨てするのが基本(というか読めない) 
awkとかperlとかrubyとかが多い(気がする) 
そもそもPython表現力高くない(というか表現力求めてない)
CAUNTION 
闇Pythonは人を殺せる劇薬なので 
扱いには十分注意してください 
通常はPEP08に従ったコードを書いてください 
あとzen of python
文と式(statement and expression) 
文 
式 
ifとかforとかそういうもの 
改行が必要(◞‸◟ (◞‸◟ (◞‸◟ (◞‸◟ )デュン 
セミコロンで代用できるけどもlambda式内で書けない 
1+1とかsum()とか関数とか 
改行がいらない!!!!(^^)!
方針 
文を式として記述できる 
テクニックを作っていく
第壱の敵 
代入
代入 
Pythonでは代入は文
じゃあどうする
グローバル変数テーブルを書き換える
( ´◔ ‸◔`)???
DEMO
lambda式を使って…
代入式を作って…
λ計算とはなんだったのか
第弐の敵 
ループ
で 
loopといえば...
forループ 
ただし文!
whileループ 
これも文!
以上 
Rubyの5.timesとかそういうものはないです。 
シンプル!!!!
じゃあどぉする
generator 
( ´◔ ‸◔`)???????
generatorとは 
コルーチンの一種 
呼び出すごとに値を生成してくれる 
イテレータ+コルーチンって感じ 
( ´◔ ‸◔`)???
これは式!! 
やったぜ
DEMO
ジェネレータ展開には 
・再帰 
・関数のイテレータ展開 
・itertools.dropwhile
俺はオブジェクト志向したい
type()使おう 
( ´◔ ‸◔`)???
(´⊙ω⊙`)!!!
OOPできるやった٩( 'ω' ) و
あとは... 
三項演算子 
組み込み関数 
itertools 
functools 
あたりを理解すればだいたい書ける
ところでこいつを見てくれ
342行が1行に!!!!!
Pythonワンライナー力の単位
37 lambda 
Pythonワンライナー力の単位
ほかに作ったもの 
Ame link 
gpa.py link 
逆ポーランド記法link
まとめ
クソコードはくそ 
でも書くのは楽しい 
✌ ('ω' ✌ )三 ✌ ('ω') ✌ 三( ✌ 'ω') ✌

Contenu connexe

Tendances

BERTをブラウザで動かしたい! ―MobileBERTとTensorFlow.js―
BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―
BERTをブラウザで動かしたい! ―MobileBERTとTensorFlow.js―Shion Honda
 
ナレッジグラフ推論チャレンジの紹介
ナレッジグラフ推論チャレンジの紹介ナレッジグラフ推論チャレンジの紹介
ナレッジグラフ推論チャレンジの紹介KnowledgeGraph
 
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15Yoichi Ochiai
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こうakira6592
 
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたいTakuji Tahara
 
マルチコアを用いた画像処理
マルチコアを用いた画像処理マルチコアを用いた画像処理
マルチコアを用いた画像処理Norishige Fukushima
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門masayoshi takahashi
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情Yuta Kikuchi
 
PEGで構文解析をする
PEGで構文解析をするPEGで構文解析をする
PEGで構文解析をするjiro4989
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計Takahiro Kubo
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!Genya Murakami
 
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようPythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようShinya Takamaeda-Y
 
Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?Takayuki Shimizukawa
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAGIRobots
 
なぜコンピュータを学ばなければならないのか 21世紀の君主論
なぜコンピュータを学ばなければならないのか 21世紀の君主論なぜコンピュータを学ばなければならないのか 21世紀の君主論
なぜコンピュータを学ばなければならないのか 21世紀の君主論Tokoroten Nakayama
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat ModelsDeep Learning JP
 
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...Kosetsu Tsukuda
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門Fixstars Corporation
 
研究発表を準備する(2022年版)
研究発表を準備する(2022年版)研究発表を準備する(2022年版)
研究発表を準備する(2022年版)Takayuki Itoh
 
Pythonが動く仕組み(の概要)
Pythonが動く仕組み(の概要)Pythonが動く仕組み(の概要)
Pythonが動く仕組み(の概要)Yoshiaki Shibutani
 

Tendances (20)

BERTをブラウザで動かしたい! ―MobileBERTとTensorFlow.js―
BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―
BERTをブラウザで動かしたい! ―MobileBERTとTensorFlow.js―
 
ナレッジグラフ推論チャレンジの紹介
ナレッジグラフ推論チャレンジの紹介ナレッジグラフ推論チャレンジの紹介
ナレッジグラフ推論チャレンジの紹介
 
先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15先端技術とメディア表現1 #FTMA15
先端技術とメディア表現1 #FTMA15
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こう
 
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
【LT資料】 Neural Network 素人なんだけど何とかご機嫌取りをしたい
 
マルチコアを用いた画像処理
マルチコアを用いた画像処理マルチコアを用いた画像処理
マルチコアを用いた画像処理
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
 
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
 
PEGで構文解析をする
PEGで構文解析をするPEGで構文解析をする
PEGで構文解析をする
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!
 
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみようPythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
PythonとPyCoRAMでお手軽にFPGAシステムを開発してみよう
 
Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?Pythonはどうやってlen関数で長さを手にいれているの?
Pythonはどうやってlen関数で長さを手にいれているの?
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
 
なぜコンピュータを学ばなければならないのか 21世紀の君主論
なぜコンピュータを学ばなければならないのか 21世紀の君主論なぜコンピュータを学ばなければならないのか 21世紀の君主論
なぜコンピュータを学ばなければならないのか 21世紀の君主論
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
 
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
 
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
 
研究発表を準備する(2022年版)
研究発表を準備する(2022年版)研究発表を準備する(2022年版)
研究発表を準備する(2022年版)
 
Pythonが動く仕組み(の概要)
Pythonが動く仕組み(の概要)Pythonが動く仕組み(の概要)
Pythonが動く仕組み(の概要)
 

En vedette (7)

Pythonでpdfをいじってみる
PythonでpdfをいじってみるPythonでpdfをいじってみる
Pythonでpdfをいじってみる
 
Pythonでexcel
PythonでexcelPythonでexcel
Pythonでexcel
 
楽しいプログラミング
楽しいプログラミング楽しいプログラミング
楽しいプログラミング
 
ワンライナーのための何か(仮)
ワンライナーのための何か(仮)ワンライナーのための何か(仮)
ワンライナーのための何か(仮)
 
Pythonのユニットテスト
PythonのユニットテストPythonのユニットテスト
Pythonのユニットテスト
 
エンジョイ☆スクレイピング
エンジョイ☆スクレイピングエンジョイ☆スクレイピング
エンジョイ☆スクレイピング
 
pythonでオフィス快適化計画
pythonでオフィス快適化計画pythonでオフィス快適化計画
pythonでオフィス快適化計画
 

Similaire à pythonワンライナーのすゝめ

Python-Tokai at Nagoya Ruby Meeting 01
Python-Tokai at Nagoya Ruby Meeting 01Python-Tokai at Nagoya Ruby Meeting 01
Python-Tokai at Nagoya Ruby Meeting 01itouakihiro
 
「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化Hirokazu Kutsu
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17Shinya Okano
 
Ren’pyの御紹介
Ren’pyの御紹介Ren’pyの御紹介
Ren’pyの御紹介zgock
 
Pythonでアルゴレイヴの世界に足を踏み入れる
Pythonでアルゴレイヴの世界に足を踏み入れるPythonでアルゴレイヴの世界に足を踏み入れる
Pythonでアルゴレイヴの世界に足を踏み入れるksnt
 
簡易TRPG向けチャットツールOnset!
簡易TRPG向けチャットツールOnset!簡易TRPG向けチャットツールOnset!
簡易TRPG向けチャットツールOnset!kiridaruma
 
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜Eric Sartre
 
こわくないPython
こわくないPythonこわくないPython
こわくないPythonKatsuya Arai
 
蛇を埋葬する(PythonをEmbedする)
蛇を埋葬する(PythonをEmbedする)蛇を埋葬する(PythonをEmbedする)
蛇を埋葬する(PythonをEmbedする)Shintarou Okada
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介shoma h
 
Security.gs fes 2010 in tokyo
Security.gs fes 2010 in tokyoSecurity.gs fes 2010 in tokyo
Security.gs fes 2010 in tokyoRen Sakamoto
 
Python2と3の互換性問題に立ち向かうときにまずやること
Python2と3の互換性問題に立ち向かうときにまずやることPython2と3の互換性問題に立ち向かうときにまずやること
Python2と3の互換性問題に立ち向かうときにまずやることkiki utagawa
 
Pythonでルンバをペットにする闇の技術
Pythonでルンバをペットにする闇の技術Pythonでルンバをペットにする闇の技術
Pythonでルンバをペットにする闇の技術karaage0703
 

Similaire à pythonワンライナーのすゝめ (20)

The esperanto generator
The esperanto generatorThe esperanto generator
The esperanto generator
 
Python-Tokai at Nagoya Ruby Meeting 01
Python-Tokai at Nagoya Ruby Meeting 01Python-Tokai at Nagoya Ruby Meeting 01
Python-Tokai at Nagoya Ruby Meeting 01
 
「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化「自動化...か、かっこいいタル」(憧れ)から始める自動化
「自動化...か、かっこいいタル」(憧れ)から始める自動化
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
 
Ren’pyの御紹介
Ren’pyの御紹介Ren’pyの御紹介
Ren’pyの御紹介
 
Pythonでアルゴレイヴの世界に足を踏み入れる
Pythonでアルゴレイヴの世界に足を踏み入れるPythonでアルゴレイヴの世界に足を踏み入れる
Pythonでアルゴレイヴの世界に足を踏み入れる
 
簡易TRPG向けチャットツールOnset!
簡易TRPG向けチャットツールOnset!簡易TRPG向けチャットツールOnset!
簡易TRPG向けチャットツールOnset!
 
Introduction
IntroductionIntroduction
Introduction
 
Assembler
AssemblerAssembler
Assembler
 
つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜つくっておぼえる!仮想マシン〜直前で実装編〜
つくっておぼえる!仮想マシン〜直前で実装編〜
 
こわくないPython
こわくないPythonこわくないPython
こわくないPython
 
蛇を埋葬する(PythonをEmbedする)
蛇を埋葬する(PythonをEmbedする)蛇を埋葬する(PythonをEmbedする)
蛇を埋葬する(PythonをEmbedする)
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介
 
Security.gs fes 2010 in tokyo
Security.gs fes 2010 in tokyoSecurity.gs fes 2010 in tokyo
Security.gs fes 2010 in tokyo
 
Django_Fukuoka
Django_FukuokaDjango_Fukuoka
Django_Fukuoka
 
S15 t0 introduction
S15 t0 introductionS15 t0 introduction
S15 t0 introduction
 
S08 t0 orientation
S08 t0 orientationS08 t0 orientation
S08 t0 orientation
 
Django_fukuoka
Django_fukuokaDjango_fukuoka
Django_fukuoka
 
Python2と3の互換性問題に立ち向かうときにまずやること
Python2と3の互換性問題に立ち向かうときにまずやることPython2と3の互換性問題に立ち向かうときにまずやること
Python2と3の互換性問題に立ち向かうときにまずやること
 
Pythonでルンバをペットにする闇の技術
Pythonでルンバをペットにする闇の技術Pythonでルンバをペットにする闇の技術
Pythonでルンバをペットにする闇の技術
 

Plus de cocu_628496

COINS-Project_2015新歓説明
COINS-Project_2015新歓説明COINS-Project_2015新歓説明
COINS-Project_2015新歓説明cocu_628496
 
svgで遊んでみた話
svgで遊んでみた話svgで遊んでみた話
svgで遊んでみた話cocu_628496
 
おふとんから眺めるSVG
おふとんから眺めるSVGおふとんから眺めるSVG
おふとんから眺めるSVGcocu_628496
 
後天性ACになるためのガイドブック
後天性ACになるためのガイドブック後天性ACになるためのガイドブック
後天性ACになるためのガイドブックcocu_628496
 
svgに恋をした
svgに恋をしたsvgに恋をした
svgに恋をしたcocu_628496
 

Plus de cocu_628496 (7)

SVG、あきた
SVG、あきたSVG、あきた
SVG、あきた
 
COINS-Project_2015新歓説明
COINS-Project_2015新歓説明COINS-Project_2015新歓説明
COINS-Project_2015新歓説明
 
svgで遊んでみた話
svgで遊んでみた話svgで遊んでみた話
svgで遊んでみた話
 
おふとんから眺めるSVG
おふとんから眺めるSVGおふとんから眺めるSVG
おふとんから眺めるSVG
 
This is Tsuru.
This is Tsuru.This is Tsuru.
This is Tsuru.
 
後天性ACになるためのガイドブック
後天性ACになるためのガイドブック後天性ACになるためのガイドブック
後天性ACになるためのガイドブック
 
svgに恋をした
svgに恋をしたsvgに恋をした
svgに恋をした
 

pythonワンライナーのすゝめ