Featured Post

8 Ways to Optimize AWS Glue Jobs in a Nutshell

  Improving the performance of AWS Glue jobs involves several strategies that target different aspects of the ETL (Extract, Transform, Load) process. Here are some key practices. 1. Optimize Job Scripts Partitioning : Ensure your data is properly partitioned. Partitioning divides your data into manageable chunks, allowing parallel processing and reducing the amount of data scanned. Filtering : Apply pushdown predicates to filter data early in the ETL process, reducing the amount of data processed downstream. Compression : Use compressed file formats (e.g., Parquet, ORC) for your data sources and sinks. These formats not only reduce storage costs but also improve I/O performance. Optimize Transformations : Minimize the number of transformations and actions in your script. Combine transformations where possible and use DataFrame APIs which are optimized for performance. 2. Use Appropriate Data Formats Parquet and ORC : These columnar formats are efficient for storage and querying, signif

Python Dictionary Vs List With Examples

Dictionary and List we use interchangeably in Python to store values. For beginners, both look the same. In reality, they both differ. Here are the differences.

Dictionary Vs Lists

Values in lists are accessed by means of integers called indices, which indicate where in the list a given value is found.

Dictionaries access values by means of integers, strings, or other Python objects called keys, which indicate where in the dictionary a given value is found. 

In other words, both lists and dictionaries provide indexed access to arbitrary values, but the set of items that can be used as dictionary indices is much larger than, and contains, the set of items that can be used as list indices.
Also, the mechanism that dictionaries use to provide indexed access is quite different from that used by lists. Both lists and dictionaries can store objects of any type.

Values stored in a list are implicitly ordered by their positions in the list because the indices that access these values are consecutive integers. You may or may not care about this ordering, but you can use it if desired.
Values stored in a dictionary are not implicitly ordered relative to one another because dictionary keys aren’t just numbers. 

Note that if you’re using a dictionary but also care about the order of the items (the order in which they were added, that is), you can use an ordered dictionary, which is a dictionary subclass that can be imported from the collections module.

You can also define an order on the items in a dictionary by using another data structure (often a list) to store such an ordering explicitly; this won’t change the fact that basic dictionaries have no implicit (built-in) ordering.

Python Dictionary Vs List With Examples

How to use list and dictionary

In spite of the differences between them, the use of dictionaries and lists often appears to be the same.
As a start, an empty dictionary is created much like an empty list, but with curly braces instead of square brackets:

>>> x = []
>>> y = {}

Here, the first line creates a new, empty list and assigns it to x. The second line creates a new, empty dictionary and assigns it to y.

How to Assign Values Dictionary and List.

After you create a dictionary, you may store values in it as though it were a list:

>>> y[0] = 'Hello'
>>> y[1] = 'Goodbye'

Even in these assignments, there’s already a significant operational difference between the dictionary and list usage.

Trying to do the same thing with a list would result in an error because, in Python, it’s illegal to assign to a position in a list that doesn’t exist. For example, if you try to assign to the 0th element of the list x, you receive an error:

>>> x[0] = 'Hello'
Traceback (innermost last):
  File "<stdin>", line 1, in ?
IndexError: list assignment index out of range

This isn’t a problem with dictionaries; new positions in dictionaries are created as necessary. Having stored some values in the dictionary, now you can access and use them:

>>> print(y[0])

>>> y[1] + ", Friend."
'Goodbye, Friend.'

All in all, this makes a dictionary look pretty much like a list. Now for the big difference. Store (and use) some values under keys that aren’t integers:

>>> y["two"] = 2
>>> y["pi"] = 3.14
>>> y["two"] * y["pi"]

This is definitely something that can’t be done with lists! Whereas list indices must be integers, dictionary keys are much less restricted; they may be numbers, strings, or one of a wide range of other Python objects.



Popular posts from this blog

How to Fix datetime Import Error in Python Quickly

How to Check Kafka Available Brokers

SQL Query: 3 Methods for Calculating Cumulative SUM