Skip to Content
PythonとJavaScriptではじめるデータビジュアライゼーション
book

PythonとJavaScriptではじめるデータビジュアライゼーション

by Kyran Dale, 嶋田 健志, 木下 哲也
August 2017
Intermediate to advanced
500 pages
12h 3m
Japanese
O'Reilly Japan, Inc.
Content preview from PythonとJavaScriptではじめるデータビジュアライゼーション
44
2 章 Python JavaScript 間の言語学習の橋渡し
...
def add():
nonlocal count
count += inc
...
Python 2
では、簡単なディクショナリのテクニックを使って閉じた変数を変更します。
def get_counter(inc):
vars = {'count': 0}
def add():
vars['count'] += inc
print('Current count: ' + str(vars['count']))
return add
vars
に新しい値を割り当てておらず、その代わりに既存のコンテナを変更しています。これは
ローカルスコープ外でも完全に有効なので、上のコードは正しく機能します。
このように、
JavaScript
プログラマはほとんど労力をかけずにクロージャのスキルを
Python
移行できます。用途は似ていますが、多くの便利な機能が含まれる豊かな言語である
Python
の方
が同じ問題に適用できる選択肢がたくさんあります。おそらく、クロージャの最も一般的な用途は
Python
のデコレータでしょう。
基本的には、デコレータは関数自体を変更せずに関数の効用を拡張する関数ラッパーです。こ
れは比較的高度な概念ですが、
Code Ship
Web
サイト(
http://thecodeship.com/patterns/
guide-to-python-function-decorators/
)の説明がわかりやすいでしょう。
2.4.9 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

ハイパフォーマンスPython

ハイパフォーマンスPython

Micha Gorelick, Ian Ozsvald, 相川 愛三
データサイエンス設計マニュアル

データサイエンス設計マニュアル

Steven S. Skiena, 小野 陽子, 長尾 高弘
パフォーマンス向上のためのデザイン設計

パフォーマンス向上のためのデザイン設計

Lara Callender Hogan, 西脇 靖紘, 星野 靖子
ハイパフォーマンスPython 第2版

ハイパフォーマンスPython 第2版

Micha Gorelick, Ian Ozsvald, 中山 光樹

Publisher Resources

ISBN: 9784873118086Other