| route-pattern | /:user_id/:repository |
| route-controller | files |
| route-action | disambiguate |
| fetch-nonce | v2:4fb586f5-4904-12fc-0ad1-a103ed4bbb29 |
| current-catalog-service-hash | f3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb |
| request-id | 9838:162063:3D05579:5413948:6977E43D |
| html-safe-nonce | 84fd4a41040e2e28c4a89d0a8d75a096d57bbc017465df15f0e20ce57442928a |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5ODM4OjE2MjA2MzozRDA1NTc5OjU0MTM5NDg6Njk3N0U0M0QiLCJ2aXNpdG9yX2lkIjoiMjE3ODAxMDc0NzA0NjM5MDM4IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | 111c1da5bcf3c12491c31ac77d6d19e30ae5d7f4d52df58ad77f1671e42cacaf |
| hovercard-subject-tag | repository:58187304 |
| github-keyboard-shortcuts | repository,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | // |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/hunkim/effective_python_notebook |
| twitter:image | https://opengraph.githubassets.com/23167aebb8b9b3b7a32016203af00c4b9e1860b70e68fdad4241b335a5b884ae/hunkim/effective_python_notebook |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/23167aebb8b9b3b7a32016203af00c4b9e1860b70e68fdad4241b335a5b884ae/hunkim/effective_python_notebook |
| og:image:alt | Contribute to hunkim/effective_python_notebook development by creating an account on GitHub. |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 870e7b4ef171b9ec3e0c7f1f5cb9c5a5c1d1899865e861b49008c3f435fc1c4e |
| turbo-cache-control | no-preview |
| go-import | github.com/hunkim/effective_python_notebook git https://github.com/hunkim/effective_python_notebook.git |
| octolytics-dimension-user_id | 901975 |
| octolytics-dimension-user_login | hunkim |
| octolytics-dimension-repository_id | 58187304 |
| octolytics-dimension-repository_nwo | hunkim/effective_python_notebook |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 58187304 |
| octolytics-dimension-repository_network_root_nwo | hunkim/effective_python_notebook |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | c3b778ddc3525ff438f1b4bb848d8fd3aaf2e0dd |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook#start-of-content |
|
| https://patch-diff.githubusercontent.com/ |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fhunkim%2Feffective_python_notebook |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub SparkBuild and deploy intelligent apps | https://github.com/features/spark |
| GitHub ModelsManage and compare prompts | https://github.com/features/models |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| GitHub SponsorsFund open source developers | https://github.com/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/accelerator |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fhunkim%2Feffective_python_notebook |
|
Sign up
| https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=hunkim%2Feffective_python_notebook |
| Reload | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
| Reload | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
| Reload | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
|
hunkim
| https://patch-diff.githubusercontent.com/hunkim |
| effective_python_notebook | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2Fhunkim%2Feffective_python_notebook |
|
Fork
91
| https://patch-diff.githubusercontent.com/login?return_to=%2Fhunkim%2Feffective_python_notebook |
|
Star
261
| https://patch-diff.githubusercontent.com/login?return_to=%2Fhunkim%2Feffective_python_notebook |
|
261
stars
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/stargazers |
|
91
forks
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/forks |
|
Branches
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/branches |
|
Tags
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/tags |
|
Activity
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/activity |
|
Star
| https://patch-diff.githubusercontent.com/login?return_to=%2Fhunkim%2Feffective_python_notebook |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2Fhunkim%2Feffective_python_notebook |
|
Code
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
|
Issues
2
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/issues |
|
Pull requests
0
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/actions |
|
Projects
0
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/projects |
|
Security
0
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/security |
|
Insights
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/pulse |
|
Code
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
|
Issues
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/issues |
|
Pull requests
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/actions |
|
Projects
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/projects |
|
Security
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/security |
|
Insights
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/pulse |
| Branches | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/branches |
| Tags | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/tags |
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/branches |
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/tags |
| 4 Commits | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/commits/master/ |
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/commits/master/ |
| KR | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/tree/master/KR |
| KR | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/tree/master/KR |
| README.md | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/README.md |
| README.md | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/README.md |
| item_01-Know Which Version of Python You Are Using.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_01-Know%20Which%20Version%20of%20Python%20You%20Are%20Using.ipynb |
| item_01-Know Which Version of Python You Are Using.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_01-Know%20Which%20Version%20of%20Python%20You%20Are%20Using.ipynb |
| item_02-Follow the PEP 8 Style Guide.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_02-Follow%20the%20PEP%208%20%20Style%20Guide.ipynb |
| item_02-Follow the PEP 8 Style Guide.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_02-Follow%20the%20PEP%208%20%20Style%20Guide.ipynb |
| item_03-Know the Differences Between bytes, str, and unicode.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_03-Know%09the%09Differences%09Between%09bytes%2C%09str%2C%09and%09unicode.ipynb |
| item_03-Know the Differences Between bytes, str, and unicode.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_03-Know%09the%09Differences%09Between%09bytes%2C%09str%2C%09and%09unicode.ipynb |
| item_04-Write Helper Functions Instead of Complex Expressions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_04-Write%09Helper%09Functions%09Instead%09of%09Complex%20Expressions.ipynb |
| item_04-Write Helper Functions Instead of Complex Expressions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_04-Write%09Helper%09Functions%09Instead%09of%09Complex%20Expressions.ipynb |
| item_05-Know How to Slice Sequences.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_05-Know%09How%09to%09Slice%09Sequences.ipynb |
| item_05-Know How to Slice Sequences.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_05-Know%09How%09to%09Slice%09Sequences.ipynb |
| item_06-Avoid Using start, end, and stride in a Single Slice.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_06-Avoid%09Using%09start%2C%09end%2C%09and%09stride%09in%09a%09Single%20Slice.ipynb |
| item_06-Avoid Using start, end, and stride in a Single Slice.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_06-Avoid%09Using%09start%2C%09end%2C%09and%09stride%09in%09a%09Single%20Slice.ipynb |
| item_07-Use List Comprehensions Instead of map and filter.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_07-Use%09List%09Comprehensions%09Instead%09of%09map%09and%20filter.ipynb |
| item_07-Use List Comprehensions Instead of map and filter.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_07-Use%09List%09Comprehensions%09Instead%09of%09map%09and%20filter.ipynb |
| item_08-Avoid More Than Two Expressions in List Comprehensions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_08-Avoid%09More%09Than%09Two%09Expressions%09in%09List%20Comprehensions.ipynb |
| item_08-Avoid More Than Two Expressions in List Comprehensions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_08-Avoid%09More%09Than%09Two%09Expressions%09in%09List%20Comprehensions.ipynb |
| item_09-Consider Generator Expressions for Large Comprehensions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_09-Consider%09Generator%09Expressions%09for%09Large%20Comprehensions.ipynb |
| item_09-Consider Generator Expressions for Large Comprehensions.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_09-Consider%09Generator%09Expressions%09for%09Large%20Comprehensions.ipynb |
| item_10-Prefer enumerate Over range.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_10-Prefer%09enumerate%09Over%09range.ipynb |
| item_10-Prefer enumerate Over range.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_10-Prefer%09enumerate%09Over%09range.ipynb |
| item_11-Use zip to Process Iterators in Parallel.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_11-Use%09zip%09to%09Process%09Iterators%09in%09Parallel.ipynb |
| item_11-Use zip to Process Iterators in Parallel.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_11-Use%09zip%09to%09Process%09Iterators%09in%09Parallel.ipynb |
| item_12-Avoid else Blocks After for and while Loops.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_12-Avoid%09else%09Blocks%09After%09for%09and%09while%09Loops.ipynb |
| item_12-Avoid else Blocks After for and while Loops.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_12-Avoid%09else%09Blocks%09After%09for%09and%09while%09Loops.ipynb |
| item_13-Take Advantage of Each Block in try except else finally.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_13-Take%20Advantage%20of%20Each%20Block%20in%20try%20except%20else%20finally.ipynb |
| item_13-Take Advantage of Each Block in try except else finally.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_13-Take%20Advantage%20of%20Each%20Block%20in%20try%20except%20else%20finally.ipynb |
| item_14-Prefer Exceptions to Returning None.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_14-Prefer%20Exceptions%20to%20Returning%20None.ipynb |
| item_14-Prefer Exceptions to Returning None.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_14-Prefer%20Exceptions%20to%20Returning%20None.ipynb |
| item_15-Know How Closures Interact with Variable Scope.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_15-Know%20How%20Closures%20Interact%20with%20Variable%20Scope.ipynb |
| item_15-Know How Closures Interact with Variable Scope.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_15-Know%20How%20Closures%20Interact%20with%20Variable%20Scope.ipynb |
| item_16-Consider Generators Instead of Returning Lists.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_16-Consider%20Generators%20Instead%20of%20Returning%20Lists.ipynb |
| item_16-Consider Generators Instead of Returning Lists.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_16-Consider%20Generators%20Instead%20of%20Returning%20Lists.ipynb |
| item_17-Be Defensive When Iterating Over Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_17-Be%20Defensive%20When%20Iterating%20Over%20Arguments.ipynb |
| item_17-Be Defensive When Iterating Over Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_17-Be%20Defensive%20When%20Iterating%20Over%20Arguments.ipynb |
| item_18-Reduce Visual Noise with Variable Positional Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_18-Reduce%20Visual%20Noise%20with%20Variable%20Positional%20Arguments.ipynb |
| item_18-Reduce Visual Noise with Variable Positional Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_18-Reduce%20Visual%20Noise%20with%20Variable%20Positional%20Arguments.ipynb |
| item_19-Provide Optional Behavior with Keyword Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_19-Provide%20Optional%20Behavior%20with%20Keyword%20Arguments.ipynb |
| item_19-Provide Optional Behavior with Keyword Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_19-Provide%20Optional%20Behavior%20with%20Keyword%20Arguments.ipynb |
| item_20-Use None and Docstrings to Specify Dynamic Default Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_20-Use%20None%20and%20Docstrings%20to%20Specify%20Dynamic%20Default%20Arguments.ipynb |
| item_20-Use None and Docstrings to Specify Dynamic Default Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_20-Use%20None%20and%20Docstrings%20to%20Specify%20Dynamic%20Default%20Arguments.ipynb |
| item_21-Enforce Clarity with Keyword-Only Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_21-Enforce%20Clarity%20with%20Keyword-Only%20Arguments.ipynb |
| item_21-Enforce Clarity with Keyword-Only Arguments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_21-Enforce%20Clarity%20with%20Keyword-Only%20Arguments.ipynb |
| item_22-Prefer Helper Classes Over Bookkeeping with Dictionaries and Tuples.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_22-Prefer%09Helper%20Classes%20Over%20Bookkeeping%20with%20Dictionaries%20and%20Tuples.ipynb |
| item_22-Prefer Helper Classes Over Bookkeeping with Dictionaries and Tuples.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_22-Prefer%09Helper%20Classes%20Over%20Bookkeeping%20with%20Dictionaries%20and%20Tuples.ipynb |
| item_23-Accept Functions for Simple Interfaces Instead of Classes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_23-Accept%20Functions%20for%20Simple%20Interfaces%20Instead%20of%20Classes.ipynb |
| item_23-Accept Functions for Simple Interfaces Instead of Classes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_23-Accept%20Functions%20for%20Simple%20Interfaces%20Instead%20of%20Classes.ipynb |
| item_24-Use @classmethod Polymorphism to Construct Objects Generically.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_24-Use%20%40classmethod%20Polymorphism%20to%20Construct%20Objects%20Generically.ipynb |
| item_24-Use @classmethod Polymorphism to Construct Objects Generically.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_24-Use%20%40classmethod%20Polymorphism%20to%20Construct%20Objects%20Generically.ipynb |
| item_25-Initialize Parent Classes with super.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_25-Initialize%20Parent%20Classes%20with%20super.ipynb |
| item_25-Initialize Parent Classes with super.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_25-Initialize%20Parent%20Classes%20with%20super.ipynb |
| item_26-Use Multiple Inheritance Only for Mix-in Utility Classes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_26-Use%20Multiple%20Inheritance%20Only%20for%20Mix-in%20Utility%20Classes.ipynb |
| item_26-Use Multiple Inheritance Only for Mix-in Utility Classes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_26-Use%20Multiple%20Inheritance%20Only%20for%20Mix-in%20Utility%20Classes.ipynb |
| item_27-Prefer Public Attributes Over Private Ones.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_27-Prefer%20Public%20Attributes%20Over%20Private%20Ones.ipynb |
| item_27-Prefer Public Attributes Over Private Ones.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_27-Prefer%20Public%20Attributes%20Over%20Private%20Ones.ipynb |
| item_28-Inherit from collections.abc for Custom Container Types.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_28-Inherit%20from%20collections.abc%20for%20Custom%20Container%20Types.ipynb |
| item_28-Inherit from collections.abc for Custom Container Types.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_28-Inherit%20from%20collections.abc%20for%20Custom%20Container%20Types.ipynb |
| item_29-Use Plain Attributes Instead of Get and Set Methods.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_29-Use%20Plain%20Attributes%20Instead%20of%20Get%20and%20Set%20Methods.ipynb |
| item_29-Use Plain Attributes Instead of Get and Set Methods.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_29-Use%20Plain%20Attributes%20Instead%20of%20Get%20and%20Set%20Methods.ipynb |
| item_30-Consider @property Instead of Refactoring Attributes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_30-Consider%20%40property%20Instead%20of%20Refactoring%20Attributes.ipynb |
| item_30-Consider @property Instead of Refactoring Attributes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_30-Consider%20%40property%20Instead%20of%20Refactoring%20Attributes.ipynb |
| item_31-Use Descriptors for Reusable @property Methods.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_31-Use%20Descriptors%20for%20Reusable%20%40property%20Methods.ipynb |
| item_31-Use Descriptors for Reusable @property Methods.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_31-Use%20Descriptors%20for%20Reusable%20%40property%20Methods.ipynb |
| item_32-Use __getattr__, __getattribute__, and __setattr__ for Lazy Attributes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_32-Use%20__getattr__%2C%20__getattribute__%2C%20and%20__setattr__%20for%20Lazy%20Attributes.ipynb |
| item_32-Use __getattr__, __getattribute__, and __setattr__ for Lazy Attributes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_32-Use%20__getattr__%2C%20__getattribute__%2C%20and%20__setattr__%20for%20Lazy%20Attributes.ipynb |
| item_33-Validate Subclasses with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_33-Validate%20Subclasses%20with%20Metaclasses.ipynb |
| item_33-Validate Subclasses with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_33-Validate%20Subclasses%20with%20Metaclasses.ipynb |
| item_34-Register Class Existence with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_34-Register%20Class%20Existence%20with%20Metaclasses.ipynb |
| item_34-Register Class Existence with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_34-Register%20Class%20Existence%20with%20Metaclasses.ipynb |
| item_35-Annotate Class Attributes with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_35-Annotate%20Class%20Attributes%20with%20Metaclasses.ipynb |
| item_35-Annotate Class Attributes with Metaclasses.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_35-Annotate%20Class%20Attributes%20with%20Metaclasses.ipynb |
| item_36-Use subprocess to Manage Child Processes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_36-Use%20subprocess%20to%20Manage%20Child%20Processes.ipynb |
| item_36-Use subprocess to Manage Child Processes.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_36-Use%20subprocess%20to%20Manage%20Child%20Processes.ipynb |
| item_37-Use Threads for Blocking IO, Avoid for Parallelism.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_37-Use%20Threads%20for%20Blocking%20IO%2C%20Avoid%20for%20Parallelism.ipynb |
| item_37-Use Threads for Blocking IO, Avoid for Parallelism.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_37-Use%20Threads%20for%20Blocking%20IO%2C%20Avoid%20for%20Parallelism.ipynb |
| item_38-Use Lock to Prevent Data Races in Threads.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_38-Use%20Lock%20to%20Prevent%20Data%20Races%20in%20Threads.ipynb |
| item_38-Use Lock to Prevent Data Races in Threads.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_38-Use%20Lock%20to%20Prevent%20Data%20Races%20in%20Threads.ipynb |
| item_39-Use Queue to Coordinate Work Between Threads.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_39-Use%20Queue%20to%20Coordinate%20Work%20Between%20Threads.ipynb |
| item_39-Use Queue to Coordinate Work Between Threads.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_39-Use%20Queue%20to%20Coordinate%20Work%20Between%20Threads.ipynb |
| item_40-Consider Coroutines to Run Many Functions Concurrently.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_40-Consider%20Coroutines%20to%20Run%20Many%20Functions%20Concurrently.ipynb |
| item_40-Consider Coroutines to Run Many Functions Concurrently.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_40-Consider%20Coroutines%20to%20Run%20Many%20Functions%20Concurrently.ipynb |
| item_41-Consider concurrent.futures for True Parallelism.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_41-Consider%20concurrent.futures%20for%20True%20Parallelism.ipynb |
| item_41-Consider concurrent.futures for True Parallelism.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_41-Consider%20concurrent.futures%20for%20True%20Parallelism.ipynb |
| item_42-Define Function Decorators with functools.wraps.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_42-Define%20Function%20Decorators%20with%20functools.wraps.ipynb |
| item_42-Define Function Decorators with functools.wraps.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_42-Define%20Function%20Decorators%20with%20functools.wraps.ipynb |
| item_43-Consider contextlib and with Statements for Reusable try_finally Behavior.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_43-Consider%20contextlib%20and%20with%20Statements%20for%20Reusable%20try_finally%20Behavior.ipynb |
| item_43-Consider contextlib and with Statements for Reusable try_finally Behavior.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_43-Consider%20contextlib%20and%20with%20Statements%20for%20Reusable%20try_finally%20Behavior.ipynb |
| item_44-Make pickle Reliable with copyreg.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_44-Make%20pickle%20Reliable%20with%20copyreg.ipynb |
| item_44-Make pickle Reliable with copyreg.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_44-Make%20pickle%20Reliable%20with%20copyreg.ipynb |
| item_45-Use datetime Instead of time for Local Clocks.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_45-Use%20datetime%20Instead%20of%20time%20for%20Local%20Clocks.ipynb |
| item_45-Use datetime Instead of time for Local Clocks.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_45-Use%20datetime%20Instead%20of%20time%20for%20Local%20Clocks.ipynb |
| item_46-Use Built-in Algorithms and Data Structures.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_46-Use%20Built-in%20Algorithms%20and%20Data%20Structures.ipynb |
| item_46-Use Built-in Algorithms and Data Structures.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_46-Use%20Built-in%20Algorithms%20and%20Data%20Structures.ipynb |
| item_47-Use decimal When Precision Is Paramount.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_47-Use%20decimal%20When%20Precision%20Is%20Paramount.ipynb |
| item_47-Use decimal When Precision Is Paramount.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_47-Use%20decimal%20When%20Precision%20Is%20Paramount.ipynb |
| item_48-Know Where to Find Community-Built Modules.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_48-Know%20Where%20to%20Find%20Community-Built%20Modules.ipynb |
| item_48-Know Where to Find Community-Built Modules.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_48-Know%20Where%20to%20Find%20Community-Built%20Modules.ipynb |
| item_49-Write Docstrings for Every Function, Class, and Module.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_49-Write%20Docstrings%20for%20Every%20Function%2C%20Class%2C%20and%20Module.ipynb |
| item_49-Write Docstrings for Every Function, Class, and Module.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_49-Write%20Docstrings%20for%20Every%20Function%2C%20Class%2C%20and%20Module.ipynb |
| item_50-Use Packages to Organize Modules and Provide Stable APIs.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_50-Use%20Packages%20to%20Organize%20Modules%20and%20Provide%20Stable%20APIs.ipynb |
| item_50-Use Packages to Organize Modules and Provide Stable APIs.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_50-Use%20Packages%20to%20Organize%20Modules%20and%20Provide%20Stable%20APIs.ipynb |
| item_51-Define a Root Exception to Insulate Callers from APIs.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_51-Define%20a%20Root%20Exception%20to%20Insulate%20Callers%20from%20APIs.ipynb |
| item_51-Define a Root Exception to Insulate Callers from APIs.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_51-Define%20a%20Root%20Exception%20to%20Insulate%20Callers%20from%20APIs.ipynb |
| item_54-Consider Module-Scoped Code to Configure Deployment Environments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_54-Consider%20Module-Scoped%20Code%20to%20Configure%20Deployment%20Environments.ipynb |
| item_54-Consider Module-Scoped Code to Configure Deployment Environments.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_54-Consider%20Module-Scoped%20Code%20to%20Configure%20Deployment%20Environments.ipynb |
| item_55-Use repr Strings for Debugging Output.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_55-Use%20repr%20Strings%20for%20Debugging%20Output.ipynb |
| item_55-Use repr Strings for Debugging Output.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_55-Use%20repr%20Strings%20for%20Debugging%20Output.ipynb |
| item_56-Test Everything with unittest.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_56-Test%20Everything%20with%20unittest.ipynb |
| item_56-Test Everything with unittest.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_56-Test%20Everything%20with%20unittest.ipynb |
| item_58-Profile Before Optimizing.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_58-Profile%20Before%20Optimizing.ipynb |
| item_58-Profile Before Optimizing.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_58-Profile%20Before%20Optimizing.ipynb |
| item_59-Use tracemalloc to Understand Memory Usage and Leaks.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_59-Use%20tracemalloc%20to%20Understand%20Memory%20Usage%20and%20Leaks.ipynb |
| item_59-Use tracemalloc to Understand Memory Usage and Leaks.ipynb | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/blob/master/item_59-Use%20tracemalloc%20to%20Understand%20Memory%20Usage%20and%20Leaks.ipynb |
| README | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook#effective-python-notebook |
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook#effective-python |
| https://github.com/bslatkin/effectivepython | https://github.com/bslatkin/effectivepython |
|
Readme
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook#readme-ov-file |
| Please reload this page | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook |
|
Activity | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/activity |
|
261
stars | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/stargazers |
|
30
watching | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/watchers |
|
91
forks | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/forks |
|
Report repository
| https://patch-diff.githubusercontent.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2Fhunkim%2Feffective_python_notebook&report=hunkim+%28user%29 |
| Releases | https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/releases |
| Packages
0 | https://patch-diff.githubusercontent.com/users/hunkim/packages?repo_name=effective_python_notebook |
|
Jupyter Notebook
100.0%
| https://patch-diff.githubusercontent.com/hunkim/effective_python_notebook/search?l=jupyter-notebook |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |