<jupyter_start><jupyter_text>Before we continue...Let's recall the essential methods from session 1 and 2 that we will need for the next tasks.  VariablesA variable is a reserved memory space to store values. They can contain any data type (strings, integers, floats, lists, dictionaries, pandas dataframes...). In python you only need to **declare** a variable by assigining it to a value. Variables are mutable, and can be re-assigned throughout the code.<jupyter_code>#for example:

mylist = [] #I have declared the variable "mylist" as an empty list that can now be filled in.<jupyter_output><empty_output><jupyter_text>Declare three variables, with the names you like. One should be a string, one should be a list of integers and the third one a dictionary containing names and ages as keys. Get the length of the list and dictionary you just instanciated.  Iterate through listsWe need to use **for loops** to iterate over each element on a list.Create a loop that adds to a new list the values from the original list (`nums`) that are smaller than 10.*Tip: remember to instanciate an empty list before the loop*<jupyter_code>nums = [2,19,4,37,5,90,45,1,77,44,17,8]<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.06994171523730225, 'fraction_numerical': 0.019150707743547043, 'mean_word_length': 5.070707070707071, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '592249', 'license': 'MIT', 'n_tokens_mistral': 349, 'n_tokens_neox': 328, 'n_words': 174, 'path': 'session3/Python101_Session3_Pre.ipynb', 'repo_name': 'ersilia-os/python101', 'size': '1201'}