# Creating a list my_list = [] my_list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # List of different data types mixed_list = [1, "hello", 3.14, True] # Accessing elements print(my_list[0]) # Output: 1 print(my_list[-1]) # Output: 5 # Append to the end my_list.append(6) # Insert at a specific position my_list.insert(2, 10) # Find an element in an array index=my_list.find(element) # Remove by value my_list.remove(10) # Remove by index removed_element = my_list.pop(2) # Length of the list print(len(my_list)) # Slicing [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # sequence[start:stop:step] print(my_list[1:4]) # Output: [1, 2, 3] print(my_list[5:]) # Output: [5, 6, 7, 8, 9] print(my_list[:5]) # Output: [0, 1, 2, 3, 4] print(my_list[::2]) # Output: [0, 2, 4, 6, 8] print(my_list[-4:]) # Output: [6, 7, 8, 9] print(my_list[:-4]) # Output: [0, 1, 2, 3, 4, 5] print(my_list[::-1]) # Output: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] print(my_list[8:2:-2]) # Output: [8, 6, 4] print(my_list[1:8:2]) # Output: [1, 3, 5, 7] print(my_list[-2:-7:-1]) # Output: [8, 7, 6, 5, 4] # Reversing a list my_list.reverse() # Sorting a list my_list.sort()
import itertools # Example list data = [1, 2, 3] # Generating permutations of the entire list perms = list(itertools.permutations(data)) print(perms) # Output: [(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)] # Generating permutations of length 2 perms_length_2 = list(itertools.permutations(data, 2)) print(perms_length_2) # Output: [(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)] combinations(iterable, r) #order does not matter
Generating Permutations Manually
You can also generate permutations manually using recursion. Here’s a simple implementation:
def permute(arr): result = [] # Base case: if the list is empty, return an empty list if len(arr) == 0: return [[]] # Recursive case for i in range(len(arr)): elem = arr[i] rest = arr[:i] arr[i 1:] for p in permute(rest): result.append([elem] p) return result
(list can be used as stack)
st=[] st.append() st.pop() top_element = stack[-1]
1) Strip:
It is used to remove leading and trailing whitespace (or other specified characters) from a string
#EX. (1,2) to 1,2 s.strip('()')
2) Don't use normal dictionary
from collections import defaultdict dictionary=defaultdict(int)
3) Important checking and convertion
s.isdigit() s.isalpha() s.isalnum() s.islower() s.isupper() s.lower() s.upper()
4) Non-Trivial
round(number, decimal_digits) ord(each)-ord('a') 1 # value of an alphabet #/ (Floating-Point Division) #// (Floor Division) maxim = float('-inf') minim = float('inf') unique_lengths.sort(reverse=True) s.count('x') list1 = [1, 2, 3] iterable = [4, 5, 6] list1.extend(iterable) position.replace('(', '').replace(')', '') expression = "2 3 * 4" result = eval(expression) print(result) #Determinant import numpy as arr=[[1,2,3],[3,4,5],[5,6,7]] print(np.linalg.det(np.array(arr)))
my_list = [3, 1, 4, 1, 5] sorted_list = sorted(my_list) my_tuple = (3, 1, 4, 1, 5) sorted_list = sorted(my_tuple) my_dict = {'apple': 3, 'banana': 1, 'cherry': 2} sorted_keys = sorted(my_dict) my_list = [3, 1, 4, 1, 5] sorted_list = sorted(my_list, reverse=True)
my_list = ['a', 'b', 'c'] for index, value in enumerate(my_list): print(index, value)
def modify_immutable(x): x = 10 # Rebinding the local variable to a new object print("Inside function:", x) a = 5 modify_immutable(a) #prints 10 print("Outside function:", a) #prints 5
def modify_mutable(lst): lst.append(4) # Modifying the original list object print("Inside function:", lst) my_list = [1, 2, 3] modify_mutable(my_list) # [1,2,3] print("Outside function:", my_list) # [1,2,3,4]
import numpy as np # Creating a 1D array arr_1d = np.array([1, 2, 3, 4, 5]) # Creating a 2D array arr_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Creating an array filled with zeros zeros = np.zeros((3, 4)) # Creating an array filled with ones ones = np.ones((2, 3)) # Creating an array with a range of values range_arr = np.arange(0, 10, 2) # Creating an array with evenly spaced values linspace_arr = np.linspace(0, 1, 5) # Creating an identity matrix identity_matrix = np.eye(3) # Shape of the array shape = arr_2d.shape # Output: (2, 3) # Size of the array (total number of elements) size = arr_2d.size # Output: 6 # Element-wise addition arr_add = arr_1d 5 # Output: array([6, 7, 8, 9, 10]) # Element-wise subtraction arr_sub = arr_1d - 2 # Output: array([ -1, 0, 1, 2, 3]) # Element-wise multiplication arr_mul = arr_1d * 2 # Output: array([ 2, 4, 6, 8, 10]) # Element-wise division arr_div = arr_1d / 2 # Output: array([0.5, 1. , 1.5, 2. , 2.5]) # Sum total_sum = np.sum(arr_2d) # Output: 21 # Mean mean_value = np.mean(arr_2d) # Output: 3.5 # Standard deviation std_dev = np.std(arr_2d) # Output: 1.707825127659933 # Maximum and minimum max_value = np.max(arr_2d) # Output: 6 min_value = np.min(arr_2d) # Output: 1 # Reshaping reshaped_arr = arr_1d.reshape((5, 1)) # Flattening flattened_arr = arr_2d.flatten() # Transposing transposed_arr = arr_2d.T # Indexing element = arr_2d[1, 2] # Output: 6 # Slicing subarray = arr_2d[0:2, 1:3] # Output: array([[2, 3], [5, 6]])
It is a function in NumPy used to convert a numpy array to different data type.
# Datatypes: np.int32,np.float32,np.float64,np.str_ import numpy as np # Create an integer array int_array = np.array([1, 2, 3, 4, 5], dtype=np.int32) # Convert to float float_array = int_array.astype(np.float32) print("Original array:", int_array) print("Converted array:", float_array)
It is a powerful tool for changing the shape of an array without altering its data
import numpy as np # Create a 1D array array = np.arange(12) # Reshape to a 2D array (3 rows x 4 columns) reshaped_array = array.reshape((3, 4))
import numpy as np import matplotlib.pyplot as plt # Create a random 2D array data = np.random.rand(10, 10) # Create a figure with a specific size and resolution plt.figure(figsize=(8, 6), dpi=100) # Display the 2D array as an image plt.imshow(data, cmap='viridis', interpolation='nearest') # Add a color bar to show the scale of values plt.colorbar() # Show the plot plt.show()
# Creating an empty dictionary # Maintains ascending order like map in cpp my_dict = {} # Creating a dictionary with initial values my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'} # Creating a dictionary using the dict() function my_dict = dict(name='Alice', age=25, city='New York') # Accessing a value by key name = my_dict['name'] # Output: 'Alice' # Using the get() method to access a value age = my_dict.get('age') # Output: 25 country = my_dict.get('country') # Output: None # Adding a new key-value pair my_dict['email'] = '[email protected]' # Updating an existing value my_dict['age'] = 26 # Removing a key-value pair using pop() age = my_dict.pop('age') # Removes 'age' and returns its value # Getting all keys in the dictionary keys = my_dict.keys() # Output: dict_keys(['name', 'email']) # Getting all values in the dictionary values = my_dict.values() # Output: dict_values(['Alice', '[email protected]']) # Iterating over keys for key in my_dict: print(key) # Iterating over values for value in my_dict.values(): print(value) # Iterating over key-value pairs for key, value in my_dict.items(): print(f"{key}: {value}")
from collections import defaultdict d = defaultdict(int) # Initializes 0 to non-existent keys d['apple'] = 1 d['banana'] = 2
# Creating an empty set my_set = set() # Creating a set with initial values my_set = {1, 2, 3, 4, 5} # Creating a set from a list my_list = [1, 2, 3, 4, 5] my_set = set(my_list) # Creating a set from a string my_set = set('hello') # Output: {'e', 'h', 'l', 'o'} # Adding an element to a set my_set.add(6) # my_set becomes {1, 2, 3, 4, 5, 6} # Removing an element from a set (raises KeyError if not found) my_set.remove(3) # my_set becomes {1, 2, 4, 5, 6} # Removing and returning an arbitrary element from the set element = my_set.pop() # Returns and removes an arbitrary element
# Single quotes str1 = 'Hello' # Double quotes str2 = "World" # Triple quotes for multi-line strings str3 = '''This is a multi-line string.''' # Raw strings (ignores escape sequences) raw_str = r'C:\Users\Name' str1 = 'Hello' # Accessing a single character char = str1[1] # 'e' # Accessing a substring (slicing) substring = str1[1:4] # 'ell' # Negative indexing last_char = str1[-1] # 'o' # Using operator concatenated = 'Hello' ' ' 'World' # 'Hello World' # Using join method words = ['Hello', 'World'] concatenated = ' '.join(words) # 'Hello World' name = 'Alice' age = 25 # String formatting formatted_str = f'My name is {name} and I am {age} years old.' # Convert to uppercase upper_str = str1.upper() # 'HELLO WORLD' # Convert to lowercase lower_str = str1.lower() # 'hello world' # Convert to capitalize capital_str = str1.capitalize() # 'Hello world' str1 = ' Hello World ' # Remove leading and trailing whitespace trimmed = str1.strip() # 'Hello World' str1 = 'Hello World Python' # Split the string into a list of substrings split_list = str1.split() # ['Hello', 'World', 'Python'] # Split the string with a specific delimiter split_list = str1.split(' ') # ['Hello', 'World', 'Python'] # Join a list of strings into a single string joined_str = ' '.join(split_list) # 'Hello World Python' str1 = 'Hello World' # Find the position of a substring pos = str1.find('World') # 6 str1 = 'Hello123' # Check if all characters are alphanumeric is_alnum = str1.isalnum() # True # Check if all characters are alphabetic is_alpha = str1.isalpha() # False # Check if all characters are digits is_digit = str1.isdigit() # False # Check if all characters are lowercase is_lower = str1.islower() # False # Check if all characters are uppercase is_upper = str1.isupper() # False
Stay Connected!
If you enjoyed this post, don’t forget to follow me on social media for more updates and insights:
Twitter: madhavganesan
Instagram: madhavganesan
LinkedIn: madhavganesan
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3