List, Object, and List of Objects.
1. List
A list is an ordered collection of items that can be of any data type, including numbers, strings, and even other lists. Lists allow duplicate values and are mutable, meaning you can modify them after creation.
Characteristics:
Ordered: The items in a list maintain their order.
Mutable: You can change the items in a list (add, remove, or modify).
Indexed: Each item has an index starting from 0.
Allows Duplicates: The same item can appear multiple times.
Example:
fruits_list = ["apple", "banana", "orange", "apple"]
2. Object
An object is a collection of key-value pairs, also known as properties or attributes. Each key is unique within an object and is associated with a value, which can be of any data type. Objects are used to represent real-world entities and their properties.
Characteristics:
Key-Value Pairs: Each property has a unique key associated with its value.
Mutable: You can change the values of the properties.
Unordered: The order of key-value pairs is not guaranteed.
Example:
student = {
"name": "Juan Carlos",
"age": 22,
"email": "juan@gmail.com"
}
3. List of Objects
Definition:
A list of objects is a collection where each item in the list is an object. This structure allows for the organization of multiple entities, each having its own set of properties defined as key-value pairs.
Characteristics:
Combines Lists and Objects: Each item in the list is an object, which can have multiple attributes.
Ordered Collection: The order of objects in the list is maintained.
Mutable: You can add, remove, or modify objects within the list.
Example:
students = [
{
"name": "Juan Carlos",
"age": 22,
"email": "juan@gmail.com"
},
{
"name": "Jose Rizal",
"age": 21,
"email": "jose@gmail.com"
}
]
Apply the concepts of list, object, and list of objects
1. Product Table
ID | Name | Category | Price | Stock | Supplier Email |
1 | Laptop | Electronics | 750 | 50 | supplier1@gmail.com |
2 | Desk Chair | Furniture | 100 | 200 | supplier2@gmail.com |
3 | Smartwatch | Electronics | 200 | 150 | supplier3@gmail.com |
4 | Notebook | Stationery | 5 | 500 | supplier4@gmail.com |
5 | Running Shoes | Apparel | 80 | 100 | supplier5@gmail.com |
List
A list is a simple collection of values. You can create a list using any column from the table (e.g., IDs, names, prices, etc.).
Output:
product_name_list = ["Laptop", "Desk Chair", "Smartwatch", "Notebook", "Running Shoes"]
product_category_list = ["Electronics", "Furniture", "Electronics", "Stationery", "Apparel"]
product_id_list = [1, 2, 3, 4, 5]
product_price_list = [750, 100, 200, 5, 80]
product_stock_list = [50, 200, 150, 500, 100]
product_supplier_email_list = ["supplier1@gmail.com", "supplier2@gmail.com", "supplier3@gmail.com", "supplier4@gmail.com", "supplier5@gmail.com"]
Object
An object groups multiple properties (like ID, Name, Category, Price, Stock, and Supplier Email) of a single entity. In this case, an object can represent one product.
Output:
product_object1 = {
"name": "Laptop",
"category": "Electronics",
"id": 1,
"price": 750,
"stock": 50,
"supplier_email": "supplier1@gmail.com"
}
product_object2 = {
"name": "Desk Chair",
"category": "Furniture",
"id": 2,
"price": 100,
"stock": 200,
"supplier_email": "supplier2@gmail.com"
}
product_object3 = {
"name": "Smartwatch",
"category": "Electronics",
"id": 3,
"price": 200,
"stock": 150,
"supplier_email": "supplier3@gmail.com"
}
product_object4 = {
"name": "Notebook",
"category": "Stationery",
"id": 4,
"price": 5,
"stock": 500,
"supplier_email": "supplier4@gmail.com"
}
product_object5 = {
"name": "Running Shoes",
"category": "Apparel",
"id": 5,
"price": 80,
"stock": 100,
"supplier_email": "supplier5@gmail.com"
}
List of Objects
A list of objects is a combination of both lists and objects. Each object in the list represents an entity (a product in this case), and the list holds multiple such objects.
Output:
products = [
{
"id": 1,
"name": "Laptop",
"category": "Electronics",
"price": 750,
"stock": 50,
"supplier_email": "supplier1@gmail.com"
},
{
"id": 2,
"name": "Desk Chair",
"category": "Furniture",
"price": 100,
"stock": 200,
"supplier_email": "supplier2@gmail.com"
},
{
"id": 3,
"name": "Smartwatch",
"category": "Electronics",
"price": 200,
"stock": 150,
"supplier_email": "supplier3@gmail.com"
},
{
"id": 4,
"name": "Notebook",
"category": "Stationery",
"price": 5,
"stock": 500,
"supplier_email": "supplier4@gmail.com"
},
{
"id": 5,
"name": "Running Shoes",
"category": "Apparel",
"price": 80,
"stock": 100,
"supplier_email": "supplier5@gmail.com"
}
]
2. Employee Table
ID | Name | Department | Age | |
1 | John Doe | Sales | 30 | john.doe@company.com |
2 | Jane Smith | Human Resources | 25 | jane.smith@company.com |
3 | Mark Johnson | IT | 40 | mark.johnson@company.com |
4 | Lisa Wong | Marketing | 28 | lisa.wong@company.com |
5 | Paul McDonald | Finance | 35 | paul.mcdonald@company.com |
List
employee_name_list = ["John Doe", "Jane Smith", "Mark Johnson", "Lisa Wong", "Paul McDonald"]
employee_department_list = ["Sales", "Human Resources", "IT", "Marketing", "Finance"]
employee_id_list = [1, 2, 3, 4, 5]
employee_age_list = [30, 25, 40, 28, 35]
employee_email_list = ["john.doe@company.com", "jane.smith@company.com", "mark.johnson@company.com", "lisa.wong@company.com", "paul.mcdonald@company.com"]
Object
employee_object1 = {
"id": 1,
"name": "John Doe",
"department": "Sales",
"age": 30,
"email": "john.doe@company.com"
}
employee_object2 = {
"id": 2,
"name": "Jane Smith",
"department": "Human Resources",
"age": 25,
"email": "jane.smith@company.com"
}
employee_object3 = {
"id": 3,
"name": "Mark Johnson",
"department": "IT",
"age": 40,
"email": "mark.johnson@company.com"
}
employee_object4 = {
"id": 4,
"name": "Lisa Wong",
"department": "Marketing",
"age": 28,
"email": "lisa.wong@company.com"
}
employee_object5 = {
"id": 5,
"name": "Paul McDonald",
"department": "Finance",
"age": 35,
"email": "paul.mcdonald@company.com"
}
List of Objects
employees = [
{
"id": 1,
"name": "John Doe",
"department": "Sales",
"age": 30,
"email": "john.doe@company.com"
},
{
"id": 2,
"name": "Jane Smith",
"department": "Human Resources",
"age": 25,
"email": "jane.smith@company.com"
},
{
"id": 3,
"name": "Mark Johnson",
"department": "IT",
"age": 40,
"email": "mark.johnson@company.com"
},
{
"id": 4,
"name": "Lisa Wong",
"department": "Marketing",
"age": 28,
"email": "lisa.wong@company.com"
},
{
"id": 5,
"name": "Paul McDonald",
"department": "Finance",
"age": 35,
"email": "paul.mcdonald@company.com"
}
]
3. Books Table
ID | Title | Author | Genre | Published Year | ISBN | Stock | Price |
1 | The Great Gatsby | F. Scott Fitzgerald | Fiction | 1925 | 978-0743273565 | 20 | 15.99 |
2 | To Kill a Mockingbird | Harper Lee | Fiction | 1960 | 978-0060935467 | 35 | 10.99 |
3 | 1984 | George Orwell | Dystopian | 1949 | 978-0451524935 | 40 | 9.99 |
4 | The Catcher in the Rye | J.D. Salinger | Fiction | 1951 | 978-0316769488 | 25 | 8.99 |
5 | A Brief History of Time | Stephen Hawking | Non-fiction | 1988 | 978-0553380163 | 10 | 18.99 |
List
book_id_list = [1, 2, 3, 4, 5]
book_title_list = ["The Great Gatsby", "To Kill a Mockingbird", "1984", "The Catcher in the Rye", "A Brief History of Time"]
book_author_list = ["F. Scott Fitzgerald", "Harper Lee", "George Orwell", "J.D. Salinger", "Stephen Hawking"]
book_genre_list = ["Fiction", "Fiction", "Dystopian", "Fiction", "Non-fiction"]
book_published_year_list = [1925, 1960, 1949, 1951, 1988]
book_isbn_list = ["978-0743273565", "978-0060935467", "978-0451524935", "978-0316769488", "978-0553380163"]
book_stock_list = [20, 35, 40, 25, 10]
book_price_list = [15.99, 10.99, 9.99, 8.99, 18.99]
Object
book1 = {
"id": 1,
"title": "The Great Gatsby",
"author": "F. Scott Fitzgerald",
"genre": "Fiction",
"published_year": 1925,
"isbn": "978-0743273565",
"stock": 20,
"price": 15.99
}
book2 = {
"id": 2,
"title": "To Kill a Mockingbird",
"author": "Harper Lee",
"genre": "Fiction",
"published_year": 1960,
"isbn": "978-0060935467",
"stock": 35,
"price": 10.99
}
book3 = {
"id": 3,
"title": "1984",
"author": "George Orwell",
"genre": "Dystopian",
"published_year": 1949,
"isbn": "978-0451524935",
"stock": 40,
"price": 9.99
}
book4 = {
"id": 4,
"title": "The Catcher in the Rye",
"author": "J.D. Salinger",
"genre": "Fiction",
"published_year": 1951,
"isbn": "978-0316769488",
"stock": 25,
"price": 8.99
}
book5 = {
"id": 5,
"title": "A Brief History of Time",
"author": "Stephen Hawking",
"genre": "Non-fiction",
"published_year": 1988,
"isbn": "978-0553380163",
"stock": 10,
"price": 18.99
}
List of Objects
books = [
{
"id": 1,
"title": "The Great Gatsby",
"author": "F. Scott Fitzgerald",
"genre": "Fiction",
"published_year": 1925,
"isbn": "978-0743273565",
"stock": 20,
"price": 15.99
},
{
"id": 2,
"title": "To Kill a Mockingbird",
"author": "Harper Lee",
"genre": "Fiction",
"published_year": 1960,
"isbn": "978-0060935467",
"stock": 35,
"price": 10.99
},
{
"id": 3,
"title": "1984",
"author": "George Orwell",
"genre": "Dystopian",
"published_year": 1949,
"isbn": "978-0451524935",
"stock": 40,
"price": 9.99
},
{
"id": 4,
"title": "The Catcher in the Rye",
"author": "J.D. Salinger",
"genre": "Fiction",
"published_year": 1951,
"isbn": "978-0316769488",
"stock": 25,
"price": 8.99
},
{
"id": 5,
"title": "A Brief History of Time",
"author": "Stephen Hawking",
"genre": "Non-fiction",
"published_year": 1988,
"isbn": "978-0553380163",
"stock": 10,
"price": 18.99
}
]
4. University Table
ID | Name | Location | Established Year | Type | Website |
1 | University of the Philippines | Quezon City | 1908 | Public | www.up.edu.ph |
2 | Ateneo de Manila University | Quezon City | 1859 | Private | www.ateneo.edu |
3 | De La Salle University | Manila | 1911 | Private | www.dlsu.edu.ph |
4 | University of Santo Tomas | Manila | 1611 | Private | www.ust.edu.ph |
5 | Polytechnic University of the Philippines | Manila | 1904 | Public | www.pup.edu.ph |
List
university_id_list = [1, 2, 3, 4, 5]
university_name_list = ["University of the Philippines", "Ateneo de Manila University", "De La Salle University", "University of Santo Tomas", "Polytechnic University of the Philippines"]
university_location_list = ["Quezon City", "Quezon City", "Manila", "Manila", "Manila"]
university_established_year_list = [1908, 1859, 1911, 1611, 1904]
university_type_list = ["Public", "Private", "Private", "Private", "Public"]
university_website_list = ["www.up.edu.ph", "www.ateneo.edu", "www.dlsu.edu.ph", "www.ust.edu.ph", "www.pup.edu.ph"]
Object
university1 = {
"id": 1,
"name": "University of the Philippines",
"location": "Quezon City",
"established_year": 1908,
"type": "Public",
"website": "www.up.edu.ph"
}
university2 = {
"id": 2,
"name": "Ateneo de Manila University",
"location": "Quezon City",
"established_year": 1859,
"type": "Private",
"website": "www.ateneo.edu"
}
university3 = {
"id": 3,
"name": "De La Salle University",
"location": "Manila",
"established_year": 1911,
"type": "Private",
"website": "www.dlsu.edu.ph"
}
university4 = {
"id": 4,
"name": "University of Santo Tomas",
"location": "Manila",
"established_year": 1611,
"type": "Private",
"website": "www.ust.edu.ph"
}
university5 = {
"id": 5,
"name": "Polytechnic University of the Philippines",
"location": "Manila",
"established_year": 1904,
"type": "Public",
"website": "www.pup.edu.ph"
}
List of Objects
universities = [
{
"id": 1,
"name": "University of the Philippines",
"location": "Quezon City",
"established_year": 1908,
"type": "Public",
"website": "www.up.edu.ph"
},
{
"id": 2,
"name": "Ateneo de Manila University",
"location": "Quezon City",
"established_year": 1859,
"type": "Private",
"website": "www.ateneo.edu"
},
{
"id": 3,
"name": "De La Salle University",
"location": "Manila",
"established_year": 1911,
"type": "Private",
"website": "www.dlsu.edu.ph"
},
{
"id": 4,
"name": "University of Santo Tomas",
"location": "Manila",
"established_year": 1611,
"type": "Private",
"website": "www.ust.edu.ph"
},
{
"id": 5,
"name": "Polytechnic University of the Philippines",
"location": "Manila",
"established_year": 1904,
"type": "Public",
"website": "www.pup.edu.ph"
}
]
5. Restaurant Table
ID | Name | Location | Cuisine Type | Established Year | Website or Contact |
1 | Vikings Luxury Buffet | Pasay City | Buffet | 2011 | www.vikings.ph |
2 | Antonio's Restaurant | Tagaytay | Fine Dining | 2002 | www.antoniosrestaurant.ph |
3 | Mesa Filipino Moderne | Makati City | Filipino | 2009 | www.mesa.ph |
4 | Manam Comfort Filipino | Quezon City | Filipino | 2013 | www.manam.ph |
5 | Ramen Nagi | Various Locations | Japanese | 2013 | www.ramennagi.com.ph |
List
restaurant_id_list = [1, 2, 3, 4, 5]
restaurant_name_list = ["Vikings Luxury Buffet", "Antonio's Restaurant", "Mesa Filipino Moderne", "Manam Comfort Filipino", "Ramen Nagi"]
restaurant_location_list = ["Pasay City", "Tagaytay", "Makati City", "Quezon City", "Various Locations"]
restaurant_cuisine_type_list = ["Buffet", "Fine Dining", "Filipino", "Filipino", "Japanese"]
restaurant_established_year_list = [2011, 2002, 2009, 2013, 2013]
restaurant_website_list = ["www.vikings.ph", "www.antoniosrestaurant.ph", "www.mesa.ph", "www.manam.ph", "www.ramennagi.com.ph"]
Object
restaurant1 = {
"id": 1,
"name": "Vikings Luxury Buffet",
"location": "Pasay City",
"cuisine_type": "Buffet",
"established_year": 2011,
"website": "www.vikings.ph"
}
restaurant2 = {
"id": 2,
"name": "Antonio's Restaurant",
"location": "Tagaytay",
"cuisine_type": "Fine Dining",
"established_year": 2002,
"website": "www.antoniosrestaurant.ph"
}
restaurant3 = {
"id": 3,
"name": "Mesa Filipino Moderne",
"location": "Makati City",
"cuisine_type": "Filipino",
"established_year": 2009,
"website": "www.mesa.ph"
}
restaurant4 = {
"id": 4,
"name": "Manam Comfort Filipino",
"location": "Quezon City",
"cuisine_type": "Filipino",
"established_year": 2013,
"website": "www.manam.ph"
}
restaurant5 = {
"id": 5,
"name": "Ramen Nagi",
"location": "Various Locations",
"cuisine_type": "Japanese",
"established_year": 2013,
"website": "www.ramennagi.com.ph"
}
List of Objects
restaurants = [
{
"id": 1,
"name": "Vikings Luxury Buffet",
"location": "Pasay City",
"cuisine_type": "Buffet",
"established_year": 2011,
"website": "www.vikings.ph"
},
{
"id": 2,
"name": "Antonio's Restaurant",
"location": "Tagaytay",
"cuisine_type": "Fine Dining",
"established_year": 2002,
"website": "www.antoniosrestaurant.ph"
},
{
"id": 3,
"name": "Mesa Filipino Moderne",
"location": "Makati City",
"cuisine_type": "Filipino",
"established_year": 2009,
"website": "www.mesa.ph"
},
{
"id": 4,
"name": "Manam Comfort Filipino",
"location": "Quezon City",
"cuisine_type": "Filipino",
"established_year": 2013,
"website": "www.manam.ph"
},
{
"id": 5,
"name": "Ramen Nagi",
"location": "Various Locations",
"cuisine_type": "Japanese",
"established_year": 2013,
"website": "www.ramennagi.com.ph"
}
]
Why is Data structure Important Again?
Understanding how to organize data using lists and objects is crucial for developing more complex data structures and algorithms in programming. Efficient data organization enhances the speed of searching, retrieving, and manipulating data, which is essential in software development.
Frontend and Backend Development Context
Frontend: You may need to dynamically display student data or product information on a webpage.
Backend: You might need to store, process, or manipulate data before sending it to a frontend application or saving it in a database.
The Importance of Data Structures:
Efficient Data Management:
- Data structures allow you to store and organize data in a way that makes it easy to access and manipulate. For instance, using arrays (lists) enables you to quickly iterate over items, while objects (dictionaries) allow for easy retrieval of data based on key-value pairs.
Improved Performance:
- The choice of data structure can significantly impact the performance of your application. For example, searching through a list can be slow, but using a hash table (a type of object) can speed up lookups to constant time, O(1), making your application much more responsive.
Real-World Application:
- Data structures are not just theoretical; they are used in various real-world applications. In web development, for example, structured data is crucial for managing user profiles, product listings, and much more. Understanding how to use lists and objects can help developers create dynamic and interactive web applications.
Foundation for Advanced Concepts:
- Mastering basic data structures like arrays, linked lists, and trees provides a strong foundation for understanding more complex data structures and algorithms. This knowledge is vital for tasks such as optimizing code, enhancing application performance, and solving challenging programming problems.
Data structures are not merely academic concepts; they are practical tools that facilitate efficient data management in software development. By mastering lists and objects, developers can build applications that are not only faster and more responsive but also easier to maintain and scale. Whether you're developing a simple application or a complex e-commerce platform, understanding data structures is essential for success in the programming world.