Header Banner
Null Byte Logo
Null Byte
wonderhowto.mark.png
Cyber Weapons Lab Forum Metasploit Basics Facebook Hacks Password Cracking Top Wi-Fi Adapters Wi-Fi Hacking Linux Basics Mr. Robot Hacks Hack Like a Pro Forensics Recon Social Engineering Networking Basics Antivirus Evasion Spy Tactics MitM Advice from a Hacker

How to Train Your Python: Part 11, Tuples and Dictionaries

Nov 30, 2015 11:29 PM
Close-up of a red dictionary with the word "Dictionary" prominently displayed.

Welcome back! In the last iteration of how to train your python, we talked about functions, and we even made our own! We're going to move on to more types of data arrays (much like lists) in today's discussion.

We're going to be discussing tuples, which can be easily understood with a little thinking, then we'll be discussing dictionaries since we'll be on the topic of data arrays. If you haven't read the article about lists, I recommend you do so, otherwise tuples will be slightly confusing. So, let's get started with tuples!

What Is a Tuple?

A really simple way to think of this is that a tuple is just a list that can't be changed. If you read any documentation about tuples, it will say that they are 'immutable'. This means that they cannot be mutated or in other words, changed.

If you remember about lists, you'll know that lists are surrounded by brackets, tuples on the other hand are surrounded by parenthesis. We're going to be making a tuple and a list with the same values, and comparing them. Let's do that now...

Making Our Own Tuples

So, we'll make our tuple and list contain the same values, 'Null', and 'Byte'. Let's make our tuple...

Python code snippet defining a tuple with values 'Null' and 'Byte'.

Now let's make our list...

Code snippet showing a Python list with two string elements: 'Null' and 'Byte'.

Now we can call these elements out the same, but we can't modify, or mutate, the tuple. Let's call the .append() method on our list and tuple to demonstrate this difference. First, we'll call it on the list, then we'll print the list...

Code snippet showing a Python list being updated with the value 'hack'.

We can see here that we appended the work 'hack' to our list with no problem, now let's try and do the same with our tuple...

Error traceback showing an AttributeError in Python code related to a tuple.

We can see here that we cannot modify our tuple. There isn't really much to do with tuples that can't be done with lists, but if you come across them in some code, you'll know what's going on. Now, let's move on to dictionaries!

What Is a Dictionary?

A dictionary is a set of keys and values. Think of it like a real life dictionary, there are words and definitions. The words serve as keys and they represent the definition.

A closed black dictionary with gold lettering.

We can use dictionaries for a variety of things, such as storing user input in a very organized way, or extracting names and values out of a text file. Today, we'll just be building a simple dictionary and going over the three methods used to call out the keys and values.

Making Our Own Dictionaries

So, we'll be creating a dictionary with two keys, 'word1', and 'word2'. We'll give them the values of 'Null' and 'Byte'. Then we'll see the three different ways to present this information. So, let's start by making our dictionary...

Code snippet demonstrating a Python dictionary with keys 'word1' and 'word2'.

The way we make dictionaries is we make our first curly bracket, then we put our first key. In this case, it's the string 'word1'. Now, when we want to designate the value for a key, we put the value we want after a colon. So, we've place 'Null' on the other side of the colon from 'word1'. Now that this key/value pair of the dictionary is complete, we put in a comma to separate it from the next pair, which is 'word2' and 'Byte'.

Now that we have our dictionary, let's use our three methods to see what's inside of it, our three methods are...

  • .keys()
  • .values()
  • .items()

Let's use each of these and briefly discuss them. We'll start with .keys()...

How to Train Your Python: Part 11, Tuples and Dictionaries

We can see that .keys() shows us all of the keys in the dictionary, now let's move on to .values(), can you guess what it does?

How to Train Your Python: Part 11, Tuples and Dictionaries

As we can see, .values() shows us the values within the dictionary, who would've guessed? Now, let's move on to .items()...

Code snippet displaying a Python dictionary items method output.

Here we see that .items() shows us the keys and their values, not just one or the other. It's also worth noting that even though the dictionary itself was returned as a list, the pairs of items within the dictionary have been returned as tuples. Now, let's wrap this all up shall we?

Wrapping It Up

Today we covered tuples and dictionaries. There wasn't really much to say about tuples, but knowing what they are will help us to read other's code. Dictionaries however, can be very handy, and we'll definitely be covering them in more detail later!

Feedback!

Let me know what you think! Leave any questions you may have and I'm positive they'll be answered! I'm sorry about the dry spells, but this project has recently picked up momentum and is growing rather quickly! I think you'll all be really excited when it gets announced!

Thank you for reading!

-Defalt

The next big software update for iPhone is coming sometime in April and will include a Food section in Apple News+, an easy-to-miss new Ambient Music app, Priority Notifications thanks to Apple Intelligence, and updates to apps like Mail, Photos, Podcasts, and Safari. See what else is coming to your iPhone with the iOS 18.4 update.

Related Articles

Comments

No Comments Exist

Be the first, drop a comment!