corpus.blog
Most cited
Talked about
Blogs
56,966 blogs · [ { "id": "01a0bb79-29d2-70e3-b663-5d3e56e8d5f8", "title": "isinstance vs type(): The safer way to check Python types", "url": "https://lernerpython.com/2026/06/06/isinstance-vs-type-the-safer-way-to-check-python-types/", "published_at": "2026-06-06T06:00:00+00:00" }, { "id": "01a0bb79-29d2-70e3-b663-5d3e57cd4c3a", "title": "Python inheritance: When to use it and when to prefer composition", "url": "https://lernerpython.com/2026/06/05/python-inheritance-when-to-use-it-and-when-to-prefer-composition/", "published_at": "2026-06-05T06:00:00+00:00" }, { "id": "01a0bb79-29d2-70e3-b663-5d3e57fae52a", "title": "Python metaclasses: How they work and when to use a decorator instead", "url": "https://lernerpython.com/2026/06/04/python-metaclasses-how-they-work-and-when-to-use-a-decorator-instead/", "published_at": "2026-06-04T06:00:00+00:00" }, { "id": "01a0bb79-29d2-70e3-b663-5d3e5854326d", "title": "Python metaclasses: How type.__new__ and type.__init__ create classes", "url": "https://lernerpython.com/2026/06/03/python-metaclasses-how-type-new-and-type-init-create-classes/", "published_at": "2026-06-03T06:00:00+00:00" }, { "id": "01a0bb79-29d2-70e3-b663-5d3e58c69e14", "title": "object and type in Python: The circular class hierarchy", "url": "https://lernerpython.com/2026/06/02/object-and-type-in-python-the-circular-class-hierarchy/", "published_at": "2026-06-02T06:00:00+00:00" }, { "id": "01a0bb79-29d2-70e3-b663-5d3e597178d8", "title": "Python MRO errors: Why child classes must precede parents", "url": "https://lernerpython.com/2026/06/01/python-mro-errors-why-child-classes-must-precede-parents/", "published_at": "2026-06-01T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3c96399e", "title": "super() without arguments: How Python finds self and the MRO", "url": "https://lernerpython.com/2026/05/31/super-without-arguments-how-python-finds-self-and-the-mro/", "published_at": "2026-05-31T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3cf93d09", "title": "Python cooperative inheritance: How super() walks the MRO", "url": "https://lernerpython.com/2026/05/30/python-cooperative-inheritance-how-super-walks-the-mro/", "published_at": "2026-05-30T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3dddd081", "title": "Python multiple inheritance: How super() follows the MRO", "url": "https://lernerpython.com/2026/05/29/python-multiple-inheritance-how-super-follows-the-mro/", "published_at": "2026-05-29T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3df407ff", "title": "Python multiple inheritance: Why every class needs super()", "url": "https://lernerpython.com/2026/05/28/python-multiple-inheritance-why-every-class-needs-super/", "published_at": "2026-05-28T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3ecea469", "title": "Python multiple inheritance: Which __init__ actually runs", "url": "https://lernerpython.com/2026/05/27/python-multiple-inheritance-which-init-actually-runs/", "published_at": "2026-05-27T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3f85fc41", "title": "Python multiple inheritance: Listing parents with __bases__", "url": "https://lernerpython.com/2026/05/26/python-multiple-inheritance-listing-parents-with-bases/", "published_at": "2026-05-26T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c3fe004d2", "title": "Python super() and the MRO: How method lookup climbs the hierarchy", "url": "https://lernerpython.com/2026/05/25/python-super-and-the-mro-how-method-lookup-climbs-the-hierarchy/", "published_at": "2026-05-25T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c40018f0d", "title": "Python inheritance: Skipping super().__init__ loses parent attributes", "url": "https://lernerpython.com/2026/05/24/python-inheritance-skipping-super-init-loses-parent-attributes/", "published_at": "2026-05-24T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c40bb74e7", "title": "Python super().__init__: Passing arguments to the parent class", "url": "https://lernerpython.com/2026/05/23/python-super-init-passing-arguments-to-the-parent-class/", "published_at": "2026-05-23T06:00:00+00:00" }, { "id": "01a0bb7d-44fa-72e8-96d2-741c41348d35", "title": "Python super(): Misspelled method names raise AttributeError", "url": "https://lernerpython.com/2026/05/22/python-super-misspelled-method-names-raise-attributeerror/", "published_at": "2026-05-22T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5db01a3d1", "title": "Python’s super(): A proxy for calling parent-class methods", "url": "https://lernerpython.com/2026/05/21/pythons-super-a-proxy-for-calling-parent-class-methods/", "published_at": "2026-05-21T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5db427b79", "title": "Python method overriding: Child methods replace the parent’s", "url": "https://lernerpython.com/2026/05/20/python-method-overriding-child-methods-replace-the-parents/", "published_at": "2026-05-20T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5dccefbe0", "title": "Is Python becoming Pinyin?", "url": "https://lernerpython.com/2026/05/19/is-python-becoming-pinyin/", "published_at": "2026-05-19T06:10:06+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5dbda1ce5", "title": "Python method resolution order: Inheriting methods from a parent", "url": "https://lernerpython.com/2026/05/19/python-method-resolution-order-inheriting-methods-from-a-parent/", "published_at": "2026-05-19T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5dcf8b314", "title": "Python method resolution order: Reading a class’s __mro__", "url": "https://lernerpython.com/2026/05/18/python-method-resolution-order-reading-a-classs-mro/", "published_at": "2026-05-18T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5ddf4bc50", "title": "Python class inheritance: Subclassing, __bases__, and isinstance", "url": "https://lernerpython.com/2026/05/17/python-class-inheritance-subclassing-bases-and-isinstance/", "published_at": "2026-05-17T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5de8bfd96", "title": "Python attributes: Instance variables, class variables, and methods", "url": "https://lernerpython.com/2026/05/16/python-attributes-instance-variables-class-variables-and-methods/", "published_at": "2026-05-16T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5def1b103", "title": "Python attribute lookup: The ICPO rule for finding methods", "url": "https://lernerpython.com/2026/05/15/python-attribute-lookup-the-icpo-rule-for-finding-methods/", "published_at": "2026-05-15T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5df3067d7", "title": "Python `__bases__`: Every class inherits from object", "url": "https://lernerpython.com/2026/05/14/python-bases-every-class-inherits-from-object/", "published_at": "2026-05-14T06:00:00+00:00" }, { "id": "01a0bb80-62be-71a1-8e66-b8f5df71413c", "title": "Composition in Python classes: The has-a relationship", "url": "https://lernerpython.com/2026/05/13/composition-in-python-classes-the-has-a-relationship/", "published_at": "2026-05-13T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cad5877c", "title": "Python composition vs inheritance: The has-a and is-a relationships", "url": "https://lernerpython.com/2026/05/12/python-composition-vs-inheritance-the-has-a-and-is-a-relationships/", "published_at": "2026-05-12T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cb19b624", "title": "Python ternary operator: When to use if-elif-else instead", "url": "https://lernerpython.com/2026/05/11/python-ternary-operator-when-to-use-if-elif-else-instead/", "published_at": "2026-05-11T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cbbbdc60", "title": "Python lambda if-else: Use the ternary operator instead", "url": "https://lernerpython.com/2026/05/10/python-lambda-if-else-use-the-ternary-operator-instead/", "published_at": "2026-05-10T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cc17bfc5", "title": "Python’s ternary operator: Conditional expressions in comprehensions", "url": "https://lernerpython.com/2026/05/09/pythons-ternary-operator-conditional-expressions-in-comprehensions/", "published_at": "2026-05-09T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57ccac7560", "title": "Python `__format__`: Define your own format specification syntax", "url": "https://lernerpython.com/2026/05/08/python-format-define-your-own-format-specification-syntax/", "published_at": "2026-05-08T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cd0c82f8", "title": "Python __format__: Detecting an empty format code", "url": "https://lernerpython.com/2026/05/07/python-format-detecting-an-empty-format-code/", "published_at": "2026-05-07T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cd4bc2c1", "title": "Python `__format__`: Custom format codes for your own classes", "url": "https://lernerpython.com/2026/05/06/python-format-custom-format-codes-for-your-own-classes/", "published_at": "2026-05-06T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cdb1a9de", "title": "f-string conversion flags: Using !r to get repr instead of str", "url": "https://lernerpython.com/2026/05/05/f-string-conversion-flags-using-r-to-get-repr-instead-of-str/", "published_at": "2026-05-05T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57cdec658a", "title": "Formatting a Python datetime with f-strings and strftime codes", "url": "https://lernerpython.com/2026/05/04/formatting-a-python-datetime-with-f-strings-and-strftime-codes/", "published_at": "2026-05-04T06:00:00+00:00" }, { "id": "01a0bb8d-f5e8-708d-8d6e-5c57ceb4c856", "title": "Thousands separators in Python f-strings: Format with commas", "url": "https://lernerpython.com/2026/05/03/thousands-separators-in-python-f-strings-format-with-commas/", "published_at": "2026-05-03T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8df323953", "title": "Python float to percentage: Format with % in an f-string", "url": "https://lernerpython.com/2026/05/02/python-float-to-percentage-format-with-in-an-f-string/", "published_at": "2026-05-02T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e00b1e76", "title": "Formatting floats in Python f-strings: The .nf specifier", "url": "https://lernerpython.com/2026/05/01/formatting-floats-in-python-f-strings-the-nf-specifier/", "published_at": "2026-05-01T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e03c3d5a", "title": "Python f-string format specifiers: Padding and aligning columns", "url": "https://lernerpython.com/2026/04/30/python-f-string-format-specifiers-padding-and-aligning-columns/", "published_at": "2026-04-30T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e06cc9e8", "title": "Python f-string format specifiers: Aligning and padding text", "url": "https://lernerpython.com/2026/04/29/python-f-string-format-specifiers-aligning-and-padding-text/", "published_at": "2026-04-29T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e09d65b6", "title": "Python f-string debugging: Printing expressions with =", "url": "https://lernerpython.com/2026/04/28/python-f-string-debugging-printing-expressions-with/", "published_at": "2026-04-28T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e0f7837f", "title": "Python f-strings are just strings: Use them anywhere", "url": "https://lernerpython.com/2026/04/27/python-f-strings-are-just-strings-use-them-anywhere/", "published_at": "2026-04-27T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e10a031a", "title": "Python f-strings: Embedding expressions inside strings", "url": "https://lernerpython.com/2026/04/26/python-f-strings-embedding-expressions-inside-strings/", "published_at": "2026-04-26T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e174e91b", "title": "Pandas datetime rounding: dt.floor, dt.ceil, and dt.round", "url": "https://lernerpython.com/2026/04/25/pandas-datetime-rounding-dt-floor-dt-ceil-and-dt-round/", "published_at": "2026-04-25T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e249e891", "title": "Pandas dt.normalize: Setting datetime times to midnight", "url": "https://lernerpython.com/2026/04/24/pandas-dt-normalize-setting-datetime-times-to-midnight/", "published_at": "2026-04-24T06:00:00+00:00" }, { "id": "01a0bb90-e4eb-7322-b1f9-f2f8e262acd6", "title": "Pandas datetime to Unix time with astype(‘int64’)", "url": "https://lernerpython.com/2026/04/23/pandas-datetime-to-unix-time-with-astype-int64/", "published_at": "2026-04-23T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f998db81e8", "title": "Convert Unix timestamps to datetime in Pandas with pd.to_datetime", "url": "https://lernerpython.com/2026/04/22/convert-unix-timestamps-to-datetime-in-pandas-with-pd-to-datetime/", "published_at": "2026-04-22T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f999c3568a", "title": "Pandas to_period: Comparing dates by month, quarter, or year", "url": "https://lernerpython.com/2026/04/21/pandas-to-period-comparing-dates-by-month-quarter-or-year/", "published_at": "2026-04-21T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99a379ad7", "title": "Pandas to_period: Finding which period contains a datetime", "url": "https://lernerpython.com/2026/04/20/pandas-to-period-finding-which-period-contains-a-datetime/", "published_at": "2026-04-20T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99a7bed6d", "title": "Find leap years in a Pandas datetime series with dt.is_leap_year", "url": "https://lernerpython.com/2026/04/19/find-leap-years-in-a-pandas-datetime-series-with-dt-is-leap-year/", "published_at": "2026-04-19T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99b537b43", "title": "Pandas dt.is_month_start: Checking period boundaries in a series", "url": "https://lernerpython.com/2026/04/18/pandas-dt-is-month-start-checking-period-boundaries-in-a-series/", "published_at": "2026-04-18T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99bcca038", "title": "Getting the day of week with `dt.day_of_week` in Pandas", "url": "https://lernerpython.com/2026/04/17/insight/", "published_at": "2026-04-17T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99cc46060", "title": "Pandas .dt accessor: Extracting year, hour, and day_of_week", "url": "https://lernerpython.com/2026/04/16/pandas-dt-accessor-extracting-year-hour-and-day-of-week/", "published_at": "2026-04-16T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99d7cb2c1", "title": "pandas read_csv date parsing: Using the date_format keyword", "url": "https://lernerpython.com/2026/04/15/pandas-read-csv-date-parsing-using-the-date-format-keyword/", "published_at": "2026-04-15T06:00:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99d9e01de", "title": "Take agentic coding to the next level", "url": "https://lernerpython.com/2026/04/14/take-agentic-coding-to-the-next-level/", "published_at": "2026-04-14T19:30:00+00:00" }, { "id": "01a0bb9d-b3ae-72f6-8eaf-46f99e625a79", "title": "Pandas parse_dates: Reading CSV date columns as datetimes", "url": "https://lernerpython.com/2026/04/14/pandas-parse-dates-reading-csv-date-columns-as-datetimes/", "published_at": "2026-04-14T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a036b9741", "title": "pd.to_datetime: Converting a pandas string column to datetimes", "url": "https://lernerpython.com/2026/04/13/pd-to-datetime-converting-a-pandas-string-column-to-datetimes/", "published_at": "2026-04-13T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a039d1407", "title": "Parse ISO date strings in Python with datetime.fromisoformat", "url": "https://lernerpython.com/2026/04/12/parse-iso-date-strings-in-python-with-datetime-fromisoformat/", "published_at": "2026-04-12T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a0491eeee", "title": "Python strptime vs. strftime: Parsing versus formatting dates", "url": "https://lernerpython.com/2026/04/11/python-strptime-vs-strftime-parsing-versus-formatting-dates/", "published_at": "2026-04-11T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a04ec1735", "title": "Python string to datetime: Parsing dates with strptime", "url": "https://lernerpython.com/2026/04/10/python-string-to-datetime-parsing-dates-with-strptime/", "published_at": "2026-04-10T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a04f6e7b3", "title": "Python datetime formatting: Using strftime for date strings", "url": "https://lernerpython.com/2026/04/09/python-datetime-formatting-using-strftime-for-date-strings/", "published_at": "2026-04-09T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a05ce15d3", "title": "Timezone-aware datetime objects in Python with zoneinfo", "url": "https://lernerpython.com/2026/04/08/timezone-aware-datetime-objects-in-python-with-zoneinfo/", "published_at": "2026-04-08T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a06140eb2", "title": "Creating Python datetime objects with datetime.datetime", "url": "https://lernerpython.com/2026/04/07/creating-python-datetime-objects-with-datetime-datetime/", "published_at": "2026-04-07T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a06f3c720", "title": "Python datetime subtraction: Getting a timedelta between two times", "url": "https://lernerpython.com/2026/04/06/python-datetime-subtraction-getting-a-timedelta-between-two-times/", "published_at": "2026-04-06T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a07c8a5a7", "title": "Python current date and time: Using datetime.datetime.now()", "url": "https://lernerpython.com/2026/04/05/python-current-date-and-time-using-datetime-datetime-now/", "published_at": "2026-04-05T06:00:00+00:00" }, { "id": "01a0bba3-aedb-73e8-9010-139a08b79327", "title": "pandas date_range: Creating a DatetimeIndex with freq", "url": "https://lernerpython.com/2026/04/04/pandas-date-range-creating-a-datetimeindex-with-freq/", "published_at": "2026-04-04T06:00:00+00:00" }, { "id": "01a0bba9-0006-709a-b185-e79f9895daad", "title": "pd.date_range: Evenly spaced Pandas dates with periods", "url": "https://lernerpython.com/2026/04/03/pd-date-range-evenly-spaced-pandas-dates-with-periods/", "published_at": "2026-04-03T06:00:00+00:00" }, { "id": "01a0bba9-0006-709a-b185-e79f996a757a", "title": "Pandas datetime filtering: Rows before now with pd.Timestamp.now()", "url": "https://lernerpython.com/2026/04/02/pandas-datetime-filtering-rows-before-now-with-pd-timestamp-now/", "published_at": "2026-04-02T06:00:00+00:00" }, { "id": "01a0bba9-0006-709a-b185-e79f997e3e83", "title": "Pandas .str.contains: Finding and filtering rows by substring", "url": "https://lernerpython.com/2026/04/01/pandas-str-contains-finding-and-filtering-rows-by-substring/", "published_at": "2026-04-01T06:00:00+00:00" }, { "id": "01a0bba9-0006-709a-b185-e79f9a215385", "title": "Python keyword-only parameters: Setting default values", "url": "https://lernerpython.com/2026/03/31/python-keyword-only-parameters-setting-default-values/", "published_at": "2026-03-31T06:00:00+00:00" }, { "id": "01a0bba9-0006-709a-b185-e79f9a421912", "title": "Python keyword-only parameters: Using * and *args in def", "url": "https://lernerpython.com/2026/03/30/python-keyword-only-parameters-using-and-args-in-def/", "published_at": "2026-03-30T06:00:00+00:00" }, { "id": "01a0bba9-0007-70f2-a4d0-dfaa5fae83e8", "title": "Type hints for *args in Python: Annotate the element type", "url": "https://lernerpython.com/2026/03/29/type-hints-for-args-in-python-annotate-the-element-type/", "published_at": "2026-03-29T06:00:00+00:00" }, { "id": "01a0bba9-0007-70f2-a4d0-dfaa6076f1a7", "title": "Python *args: Collecting positional arguments into a tuple", "url": "https://lernerpython.com/2026/03/28/python-args-collecting-positional-arguments-into-a-tuple/", "published_at": "2026-03-28T06:00:00+00:00" }, { "id": "01a0bba9-0007-70f2-a4d0-dfaa60a9e912", "title": "Python *args: Accepting any number of positional arguments", "url": "https://lernerpython.com/2026/03/27/python-args-accepting-any-number-of-positional-arguments/", "published_at": "2026-03-27T06:00:00+00:00" }, { "id": "01a0bba9-0007-70f2-a4d0-dfaa60dcafc5", "title": "Positional vs keyword arguments in Python function calls", "url": "https://lernerpython.com/2026/03/26/positional-vs-keyword-arguments-in-python-function-calls/", "published_at": "2026-03-26T07:00:00+00:00" }, { "id": "01a0bba9-0007-70f2-a4d0-dfaa610df433", "title": "Python 3.15 lazy imports: Deferring module load until first use", "url": "https://lernerpython.com/2026/03/25/python-3-15-lazy-imports-deferring-module-load-until-first-use/", "published_at": "2026-03-25T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-1809ffb72f4f", "title": "Python dict keys: Why custom objects work but lists don’t", "url": "https://lernerpython.com/2026/03/24/python-dict-keys-why-custom-objects-work-but-lists-dont/", "published_at": "2026-03-24T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a009c327d", "title": "Python dict keys must be hashable: Why lists don’t work", "url": "https://lernerpython.com/2026/03/23/python-dict-keys-must-be-hashable-why-lists-dont-work/", "published_at": "2026-03-23T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a0130d7c3", "title": "Do you teach Python? Then check out course-setup", "url": "https://lernerpython.com/2026/03/22/do-you-teach-python-then-check-out-course-setup/", "published_at": "2026-03-22T15:10:28+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a02010684", "title": "Pandas str.split: Get the first item of a comma-separated column", "url": "https://lernerpython.com/2026/03/22/pandas-str-split-get-the-first-item-of-a-comma-separated-column/", "published_at": "2026-03-22T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a02025af5", "title": "Pandas str.isdigit: Checking whether strings contain only digits", "url": "https://lernerpython.com/2026/03/21/pandas-str-isdigit-checking-whether-strings-contain-only-digits/", "published_at": "2026-03-21T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a02f0afc3", "title": "Pandas string slicing: Extracting substrings with .str.slice", "url": "https://lernerpython.com/2026/03/20/pandas-string-slicing-extracting-substrings-with-str-slice/", "published_at": "2026-03-20T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a03eaefc7", "title": "Pandas .str.get: Retrieving characters from string columns", "url": "https://lernerpython.com/2026/03/19/pandas-str-get-retrieving-characters-from-string-columns/", "published_at": "2026-03-19T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a049edad4", "title": "Pandas MultiIndex: Dropping a level with reset_index(drop=True)", "url": "https://lernerpython.com/2026/03/18/pandas-multiindex-dropping-a-level-with-reset-index-drop-true/", "published_at": "2026-03-18T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a04f82b4f", "title": "Pandas reset_index: Moving multi-index levels back to columns", "url": "https://lernerpython.com/2026/03/17/pandas-reset-index-moving-multi-index-levels-back-to-columns/", "published_at": "2026-03-17T07:00:00+00:00" }, { "id": "01a0bbae-0209-7290-85ae-180a05315c42", "title": "Pandas reset_index: Turning a data frame’s index into a column", "url": "https://lernerpython.com/2026/03/16/pandas-reset-index-turning-a-data-frames-index-into-a-column/", "published_at": "2026-03-16T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd127b3f16", "title": "Pandas set_index: Turning columns into a data frame index", "url": "https://lernerpython.com/2026/03/15/pandas-set-index-turning-columns-into-a-data-frame-index/", "published_at": "2026-03-15T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd1289da8e", "title": "Multi-line f-strings in Python: Triple quotes with interpolation", "url": "https://lernerpython.com/2026/03/14/multi-line-f-strings-in-python-triple-quotes-with-interpolation/", "published_at": "2026-03-14T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd12c64141", "title": "Python multiline strings: \\n versus triple quotes", "url": "https://lernerpython.com/2026/03/13/python-multiline-strings-n-versus-triple-quotes/", "published_at": "2026-03-13T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd132d36e7", "title": "Python string quotes: Handling an apostrophe inside a string", "url": "https://lernerpython.com/2026/03/12/python-string-quotes-handling-an-apostrophe-inside-a-string/", "published_at": "2026-03-12T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd13d2f2b9", "title": "Reading binary files in Python: Use ‘rb’ mode to get bytes", "url": "https://lernerpython.com/2026/03/11/reading-binary-files-in-python-use-rb-mode-to-get-bytes/", "published_at": "2026-03-11T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd14a8c962", "title": "functools.total_ordering: Define two comparison methods, get six", "url": "https://lernerpython.com/2026/03/10/functools-total-ordering-define-two-comparison-methods-get-six/", "published_at": "2026-03-10T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd1565eb1d", "title": "Python `__all__`: Blocking wildcard imports with a fake name", "url": "https://lernerpython.com/2026/03/09/python-all-blocking-wildcard-imports-with-a-fake-name/", "published_at": "2026-03-09T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd15ecfdf6", "title": "Python __all__: Controlling which names import * exports", "url": "https://lernerpython.com/2026/03/08/python-all-controlling-which-names-import-exports/", "published_at": "2026-03-08T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd1611a8be", "title": "Wildcard imports in Python: Why from module import * is a bad idea", "url": "https://lernerpython.com/2026/03/07/wildcard-imports-in-python-why-from-module-import-is-a-bad-idea/", "published_at": "2026-03-07T07:00:00+00:00" }, { "id": "01a0bbb3-0166-7298-a090-86fd16f21f5a", "title": "Python even/odd checks: Using truthiness instead of == 0", "url": "https://lernerpython.com/2026/03/06/python-even-odd-checks-using-truthiness-instead-of-0/", "published_at": "2026-03-06T07:00:00+00:00" }, { "id": "01a0bbb8-8c9f-73cd-a52b-399dbfba2d90", "title": "Pandas astype errors=’ignore’: Skip failed dtype conversions", "url": "https://lernerpython.com/2026/03/05/pandas-astype-errors-ignore-skip-failed-dtype-conversions/", "published_at": "2026-03-05T07:00:00+00:00" }, { "id": "01a0bbb8-8c9f-73cd-a52b-399dc0b11e71", "title": "Pandas astype() returns a new Series instead of converting in place", "url": "https://lernerpython.com/2026/03/04/pandas-astype-returns-a-new-series-instead-of-converting-in-place/", "published_at": "2026-03-04T07:00:00+00:00" }, { "id": "01a0bbb8-8c9f-73cd-a52b-399dc0eabb19", "title": "Counting NaN values in a Pandas DataFrame with isna and sum", "url": "https://lernerpython.com/2026/03/03/counting-nan-values-in-a-pandas-dataframe-with-isna-and-sum/", "published_at": "2026-03-03T07:00:00+00:00" }, { "id": "01a0bbb8-8c9f-73cd-a52b-399dc16b9f7e", "title": "Counting NaN values in a Pandas series with isna and sum", "url": "https://lernerpython.com/2026/03/02/counting-nan-values-in-a-pandas-series-with-isna-and-sum/", "published_at": "2026-03-02T07:00:00+00:00" } ] posts
Claim your blog
Back to LernerPython blog, from Reuven Lerner
Blog · corpus.blog/blogs/lernerpython.com/posts
LernerPython blog, from Reuven Lerner
lernerpython.com
2026
isinstance vs type(): The safer way to check Python types
original ↗
6 Jun 2026
Python inheritance: When to use it and when to prefer composition
original ↗
5 Jun 2026
Python metaclasses: How they work and when to use a decorator instead
original ↗
4 Jun 2026
Python metaclasses: How type.__new__ and type.__init__ create classes
original ↗
3 Jun 2026
object and type in Python: The circular class hierarchy
original ↗
2 Jun 2026
Python MRO errors: Why child classes must precede parents
original ↗
1 Jun 2026
super() without arguments: How Python finds self and the MRO
original ↗
31 May 2026
Python cooperative inheritance: How super() walks the MRO
original ↗
30 May 2026
Python multiple inheritance: How super() follows the MRO
original ↗
29 May 2026
Python multiple inheritance: Why every class needs super()
original ↗
28 May 2026
Python multiple inheritance: Which __init__ actually runs
original ↗
27 May 2026
Python multiple inheritance: Listing parents with __bases__
original ↗
26 May 2026
Python super() and the MRO: How method lookup climbs the hierarchy
original ↗
25 May 2026
Python inheritance: Skipping super().__init__ loses parent attributes
original ↗
24 May 2026
Python super().__init__: Passing arguments to the parent class
original ↗
23 May 2026
Python super(): Misspelled method names raise AttributeError
original ↗
22 May 2026
Python’s super(): A proxy for calling parent-class methods
original ↗
21 May 2026
Python method overriding: Child methods replace the parent’s
original ↗
20 May 2026
Is Python becoming Pinyin?
original ↗
19 May 2026
Python method resolution order: Inheriting methods from a parent
original ↗
19 May 2026
Python method resolution order: Reading a class’s __mro__
original ↗
18 May 2026
Python class inheritance: Subclassing, __bases__, and isinstance
original ↗
17 May 2026
Python attributes: Instance variables, class variables, and methods
original ↗
16 May 2026
Python attribute lookup: The ICPO rule for finding methods
original ↗
15 May 2026
Python `__bases__`: Every class inherits from object
original ↗
14 May 2026
Composition in Python classes: The has-a relationship
original ↗
13 May 2026
Python composition vs inheritance: The has-a and is-a relationships
original ↗
12 May 2026
Python ternary operator: When to use if-elif-else instead
original ↗
11 May 2026
Python lambda if-else: Use the ternary operator instead
original ↗
10 May 2026
Python’s ternary operator: Conditional expressions in comprehensions
original ↗
9 May 2026
Python `__format__`: Define your own format specification syntax
original ↗
8 May 2026
Python __format__: Detecting an empty format code
original ↗
7 May 2026
Python `__format__`: Custom format codes for your own classes
original ↗
6 May 2026
f-string conversion flags: Using !r to get repr instead of str
original ↗
5 May 2026
Formatting a Python datetime with f-strings and strftime codes
original ↗
4 May 2026
Thousands separators in Python f-strings: Format with commas
original ↗
3 May 2026
Python float to percentage: Format with % in an f-string
original ↗
2 May 2026
Formatting floats in Python f-strings: The .nf specifier
original ↗
1 May 2026
Python f-string format specifiers: Padding and aligning columns
original ↗
30 Apr 2026
Python f-string format specifiers: Aligning and padding text
original ↗
29 Apr 2026
Python f-string debugging: Printing expressions with =
original ↗
28 Apr 2026
Python f-strings are just strings: Use them anywhere
original ↗
27 Apr 2026
Python f-strings: Embedding expressions inside strings
original ↗
26 Apr 2026
Pandas datetime rounding: dt.floor, dt.ceil, and dt.round
original ↗
25 Apr 2026
Pandas dt.normalize: Setting datetime times to midnight
original ↗
24 Apr 2026
Pandas datetime to Unix time with astype(‘int64’)
original ↗
23 Apr 2026
Convert Unix timestamps to datetime in Pandas with pd.to_datetime
original ↗
22 Apr 2026
Pandas to_period: Comparing dates by month, quarter, or year
original ↗
21 Apr 2026
Pandas to_period: Finding which period contains a datetime
original ↗
20 Apr 2026
Find leap years in a Pandas datetime series with dt.is_leap_year
original ↗
19 Apr 2026
Pandas dt.is_month_start: Checking period boundaries in a series
original ↗
18 Apr 2026
Getting the day of week with `dt.day_of_week` in Pandas
original ↗
17 Apr 2026
Pandas .dt accessor: Extracting year, hour, and day_of_week
original ↗
16 Apr 2026
pandas read_csv date parsing: Using the date_format keyword
original ↗
15 Apr 2026
Take agentic coding to the next level
original ↗
14 Apr 2026
Pandas parse_dates: Reading CSV date columns as datetimes
original ↗
14 Apr 2026
pd.to_datetime: Converting a pandas string column to datetimes
original ↗
13 Apr 2026
Parse ISO date strings in Python with datetime.fromisoformat
original ↗
12 Apr 2026
Python strptime vs. strftime: Parsing versus formatting dates
original ↗
11 Apr 2026
Python string to datetime: Parsing dates with strptime
original ↗
10 Apr 2026
Python datetime formatting: Using strftime for date strings
original ↗
9 Apr 2026
Timezone-aware datetime objects in Python with zoneinfo
original ↗
8 Apr 2026
Creating Python datetime objects with datetime.datetime
original ↗
7 Apr 2026
Python datetime subtraction: Getting a timedelta between two times
original ↗
6 Apr 2026
Python current date and time: Using datetime.datetime.now()
original ↗
5 Apr 2026
pandas date_range: Creating a DatetimeIndex with freq
original ↗
4 Apr 2026
pd.date_range: Evenly spaced Pandas dates with periods
original ↗
3 Apr 2026
Pandas datetime filtering: Rows before now with pd.Timestamp.now()
original ↗
2 Apr 2026
Pandas .str.contains: Finding and filtering rows by substring
original ↗
1 Apr 2026
Python keyword-only parameters: Setting default values
original ↗
31 Mar 2026
Python keyword-only parameters: Using * and *args in def
original ↗
30 Mar 2026
Type hints for *args in Python: Annotate the element type
original ↗
29 Mar 2026
Python *args: Collecting positional arguments into a tuple
original ↗
28 Mar 2026
Python *args: Accepting any number of positional arguments
original ↗
27 Mar 2026
Positional vs keyword arguments in Python function calls
original ↗
26 Mar 2026
Python 3.15 lazy imports: Deferring module load until first use
original ↗
25 Mar 2026
Python dict keys: Why custom objects work but lists don’t
original ↗
24 Mar 2026
Python dict keys must be hashable: Why lists don’t work
original ↗
23 Mar 2026
Do you teach Python? Then check out course-setup
original ↗
22 Mar 2026
Pandas str.split: Get the first item of a comma-separated column
original ↗
22 Mar 2026
Pandas str.isdigit: Checking whether strings contain only digits
original ↗
21 Mar 2026
Pandas string slicing: Extracting substrings with .str.slice
original ↗
20 Mar 2026
Pandas .str.get: Retrieving characters from string columns
original ↗
19 Mar 2026
Pandas MultiIndex: Dropping a level with reset_index(drop=True)
original ↗
18 Mar 2026
Pandas reset_index: Moving multi-index levels back to columns
original ↗
17 Mar 2026
Pandas reset_index: Turning a data frame’s index into a column
original ↗
16 Mar 2026
Pandas set_index: Turning columns into a data frame index
original ↗
15 Mar 2026
Multi-line f-strings in Python: Triple quotes with interpolation
original ↗
14 Mar 2026
Python multiline strings: \n versus triple quotes
original ↗
13 Mar 2026
Python string quotes: Handling an apostrophe inside a string
original ↗
12 Mar 2026
Reading binary files in Python: Use ‘rb’ mode to get bytes
original ↗
11 Mar 2026
functools.total_ordering: Define two comparison methods, get six
original ↗
10 Mar 2026
Python `__all__`: Blocking wildcard imports with a fake name
original ↗
9 Mar 2026
Python __all__: Controlling which names import * exports
original ↗
8 Mar 2026
Wildcard imports in Python: Why from module import * is a bad idea
original ↗
7 Mar 2026
Python even/odd checks: Using truthiness instead of == 0
original ↗
6 Mar 2026
Pandas astype errors=’ignore’: Skip failed dtype conversions
original ↗
5 Mar 2026
Pandas astype() returns a new Series instead of converting in place
original ↗
4 Mar 2026
Counting NaN values in a Pandas DataFrame with isna and sum
original ↗
3 Mar 2026
Counting NaN values in a Pandas series with isna and sum
original ↗
2 Mar 2026
Previous
Next