forked from Asabeneh/30-Days-Of-Python
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
45 changed files
with
10,927 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,290 @@ | ||
<div align="center"> | ||
<h1> 30 Days Of Python: Day 2 - Variables</h1> | ||
<a class="header-badge" target="_blank" href="https://www.linkedin.com/in/asabeneh/"> | ||
<img src="https://img.shields.io/badge/style--5eba00.svg?label=LinkedIn&logo=linkedin&style=social"> | ||
</a> | ||
<a class="header-badge" target="_blank" href="https://twitter.com/Asabeneh"> | ||
<img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/asabeneh?style=social"> | ||
</a> | ||
|
||
<sub>Author: | ||
<a href="https://www.linkedin.com/in/asabeneh/" target="_blank">Asabeneh Yetayeh</a><br> | ||
<small> First Edition: Nov 22 - Dec 22, 2019</small> | ||
</sub> | ||
</div> | ||
</div> | ||
|
||
[<< Day 1](../01_Day/introduction.md) | [Day 3 >>](../03_Day/03_operators.md) | ||
|
||
 | ||
|
||
- [📘 Day 2](#%f0%9f%93%98-day-2) | ||
- [Built in functions](#built-in-functions) | ||
- [Variables](#variables) | ||
- [Data Types](#data-types) | ||
- [Checking Data types and Casting](#checking-data-types-and-casting) | ||
- [Number](#number) | ||
- [💻 Exercises - Day 2](#%f0%9f%92%bb-exercises---day-2) | ||
|
||
|
||
|
||
# 📘 Day 2 | ||
|
||
## Built in functions | ||
|
||
In python we have lots of built in functions. Built-in functions are globally available for your use. Some of the most commonly used python built-in functions are the following: _print()_, _len()_, _type()_, _int()_, _float()_, _str()_, _input()_, _list()_, _dict()_, _min()_, _max()_, _sum()_, _sorted()_, _open()_, _file()_, _help()_, and _dir()_. In the following table you will see an exhaustive list of python built in functions taken from [python documentation](https://docs.python.org/2/library/functions.html). | ||
|
||
 | ||
|
||
Let's open the python shell and start using some of the most common built in functions. | ||
|
||
 | ||
|
||
Let's practice more by using different built-in functions | ||
|
||
 | ||
|
||
As you can see from the above terminal, python has reserved words. We do not use reserved words to declare variables or functions. We will cover variables in the next section. | ||
|
||
I believe, by now you are familiar with built-in functions. Let's do one more practice of built-in functions and we will move on to the next section | ||
|
||
 | ||
|
||
## Variables | ||
|
||
Variables store data in a computer memory. Mnemonic variables are recommend to use in many programming languages. A variable refers to an a memory address in which a data is stored. | ||
Number at the beginning, special character, hyphen are not allowed. A variable can have a short name (like x,y,z) but a more descriptive name (firstname, lastname, age, country) is highly recommended . | ||
Python Variable Name Rules | ||
|
||
- A variable name must start with a letter or the underscore character | ||
- A variable name cannot start with a number | ||
- A variable name can only contain alpha-numeric characters and underscores (A-z, 0-9, and \_ ) | ||
- Variable names are case-sensitive (firstname, Firstname, FirstName and FIRSTNAME are different variables) | ||
|
||
Valid variable names | ||
|
||
```shell | ||
firstname | ||
lastname | ||
age | ||
country | ||
city | ||
first_name | ||
last_name | ||
capital_city | ||
_if # if we want to use reserved word as a variable | ||
year_2019 | ||
year2019 | ||
current_year_2019 | ||
num1 | ||
num2 | ||
``` | ||
|
||
Invalid variables names | ||
|
||
```shell | ||
first-name | ||
num-1 | ||
1num | ||
``` | ||
|
||
We will use standard python variable naming style which has been adopted by many python developers. The example below is an example of standard naming of variables, underscore when the variable name is long. | ||
|
||
When we assign a certain data type to a variable is called variable declaration. For instance in the example below my first name is assigned to a variable first_name. The equal sign is an assignment operator. Assigning means storing data in the variable. | ||
|
||
_Example:_ | ||
|
||
```py | ||
# Variables in Python | ||
|
||
first_name = 'Asabeneh' | ||
last_name = 'Yetayeh' | ||
country = 'Finland' | ||
city = 'Helsinki' | ||
age = 250 | ||
is_married = True | ||
skills = ['HTML', 'CSS', 'JS', 'React', 'Python'] | ||
person_info = { | ||
'firstname':'Asabeneh', | ||
'lastname':'Yetayeh', | ||
'country':'Finland', | ||
'city':'Helsinki' | ||
} | ||
``` | ||
|
||
Let's use _print()_ and _len()_ built in functions. Print function will take multiple arguments. An argument is a value which we pass or put inside the function parenthesis, see the example below. | ||
|
||
**Example:** | ||
|
||
```py | ||
print('Hello, World!') | ||
print('Hello',',', 'World','!') # it can take multiple arguments | ||
print(len('Hello, World!')) # it takes only one argument | ||
``` | ||
|
||
Let's print and also find the length of the variables declared at the top: | ||
|
||
**Example:** | ||
|
||
```py | ||
# Printing the values stored in the variables | ||
|
||
print('First name:', first_name) | ||
print('First name length:', len(first_name)) | ||
print('Last name: ', last_name) | ||
print('Last name length: ', len(last_name)) | ||
print('Country: ', country) | ||
print('City: ', city) | ||
print('Age: ', age) | ||
print('Married: ', is_married) | ||
print('Skills: ', skills) | ||
print('Person information: ', person_info) | ||
``` | ||
|
||
Variable can also be declared in one line: | ||
|
||
**Example:** | ||
|
||
```py | ||
first_name, last_name, country, age, is_married = 'Asabeneh', 'Yetayeh', 'Helsink', 250, True | ||
|
||
print(first_name, last_name, country, age, is_married) | ||
print('First name:', first_name) | ||
print('Last name: ', last_name) | ||
print('Country: ', country) | ||
print('Age: ', age) | ||
print('Married: ', is_married) | ||
``` | ||
|
||
Getting user input using the _input()_ built-in function. Let's assign the data we get from a user into first_name and age variables. | ||
**Example:** | ||
|
||
```py | ||
first_name = input('What is your name: ') | ||
age = input('How old are you? ') | ||
|
||
print(first_name) | ||
print(age) | ||
``` | ||
|
||
## Data Types | ||
|
||
There are several data types in python. To identify the data type we use the _type_ builtin function. I like you to focus understanding different data types very well. When it comes to programming it is all about data types. I introduced data types at the very beginning and it comes again, because every topic is related to data types. We will cover data types in more detail in their respective sections. | ||
|
||
## Checking Data types and Casting | ||
|
||
- Check Data types: To check the data type of a certain data type we use the _type_ | ||
**Example:** | ||
|
||
```py | ||
# Different python data types | ||
# Let's declare different data types | ||
|
||
first_name = 'Asabeneh' # str | ||
last_name = 'Yetayeh' # str | ||
country = 'Finland' # str | ||
city= 'Helsinki' # str | ||
age = 250 # int, it is not my real age, don't worry about it | ||
|
||
# Printing out types | ||
print(type('Asabeneh')) # str | ||
print(type(first_name)) # str | ||
print(type(10)) # int | ||
print(type(3.14)) # float | ||
print(type(1 + 1j)) # complex | ||
print(type(True)) # bool | ||
print(type([1, 2,3,4])) # list | ||
print(type({'name':'Asabeneh','age':250, 'is_married':250})) # dict | ||
print(type((1,2))) # tuple | ||
print(type(zip([1,2],[3,4]))) # set | ||
``` | ||
|
||
- Casting: Converting one data type to another data type. We use _int()_, _float()_, _str()_, _list_ | ||
When we do arithmetic operations string numbers should be first converted to int or float if not it returns an error. If we concatenate a number with string, the number should be first converted to a string. We will talk about concatenation in String section. | ||
**Example:** | ||
|
||
```py | ||
# int to float | ||
|
||
num_int = 10 | ||
print('num_int',num_int) # 10 | ||
num_float = float(num_int) | ||
print('num_float:', num_float) # 10.0 | ||
|
||
# float to int | ||
|
||
gravity = 9.81 | ||
print(int(gravity)) # 9 | ||
|
||
# int to str | ||
num_int = 10 | ||
print(num_int) # 10 | ||
num_str = str(num_int) | ||
print(num_str) # '10' | ||
|
||
# str to int | ||
num_str = '10.6' | ||
print('num_int', int(num_str)) # 10 | ||
print('num_float', float(num_str)) # 10.6 | ||
|
||
# str to list | ||
first = 'Asabeneh' | ||
print(first_name) | ||
print(first_name) # 'Asabeneh' | ||
first_name_to_list = list(first_name) | ||
print(first_name_to_list) # ['A', 's', 'a', 'b', 'e', 'n', 'e', 'h'] | ||
``` | ||
|
||
## Number | ||
|
||
Numbers are python data types. | ||
|
||
1. Integers: Integer(negative, zero and positive) numbers | ||
Example: | ||
... -3, -2, -1, 0, 1, 2, 3 ... | ||
|
||
2. Floating Numbers(Decimal numbers) | ||
Example: | ||
... -3.5, -2.25, -1.0, 0.0, 1.1, 2.2, 3.5 ... | ||
|
||
3. Complex Numbers | ||
Example: | ||
1 + j, 2 + 4j, 1 - 1j | ||
|
||
## 💻 Exercises - Day 2 | ||
|
||
1. Inside 30DaysOfPython create a folder called day_2. Inside this folder create a file name called variables.py | ||
2. Writ a python comment saying 'Day 2: 30 Days of python programming' | ||
3. Declare a first name variable and assign a value to it | ||
4. Declare a last name variable and assign a value to it | ||
5. Declare a full name variable and assign a value to it | ||
6. Declare a country variable and assign a value to it | ||
7. Declare a city variable and assign a value to it | ||
8. Declare an age variable and assign a value to it | ||
9. Declare a year variable and assign a value to it | ||
10. Declare a variable is_married and assign a value to it | ||
11. Declare a variable is_true and assign a value to it | ||
12. Declare a variable is_light_on and assign a value to it | ||
13. Declare multiple variable on one line | ||
14. Check the data type of all your variables using type() built in function | ||
15. Using the _len()_ built-in function find the length of your first name | ||
16. Compare the length of your first name and your last name | ||
17. Declare 5 as num_one and 4 as num_two | ||
1. Add num_one and num_two and assign the value to a variable _total_ | ||
2. Subtract num_two from num_one and assign the value to a variable _diff_ | ||
3. Multiply num_two and num_one and assign the value to a variable _product_ | ||
4. Divide num_one by num_two and assign the value to a variable _division_ | ||
5. Use modulus division to find num_two divided by num_one and assign the value to a variable _remainder_ | ||
6. Calculate num_one the power of num_two and assign the value to a variable _exp_ | ||
7. Find floor division of num_one by num_two and assign the value to a variable _floor_division_ | ||
18. The radius of a circle is 30 meters. | ||
1. Calculate the area of a circle and assign the value to a variable _area_of_circle_ | ||
2. Calculate the circumference of a circle and assign the value to a variable _circum_of_circle_ | ||
3. Take radius as user input and calculate the area. | ||
19. Use the built-in input function to get first name, last name, country and age from a user and store the value to their corresponding variable names | ||
20. Run help('keywords') on python shell or in your file check the reserved words | ||
|
||
|
||
🎉 CONGRATULATIONS ! 🎉 | ||
|
||
[<< Day 1](../01_Day/introduction.md) | [Day 3 >>](../03_Day/03_operators.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.