diff --git a/Assignment_1.py b/Assignment_1.py new file mode 100644 index 0000000..a880bec --- /dev/null +++ b/Assignment_1.py @@ -0,0 +1,12 @@ +def pascal_function(n): + for i in range(0, n+1): + first = 1 + for j in range(1, i+1): + print('', first, end=' ')#make first number always 1 + first = first * (i - j) + first //= j + # print("first is:" , first) + print("") + +n= int(input("Enter number of rows:")) +pascal_function(n) \ No newline at end of file diff --git a/Assignment_2.py b/Assignment_2.py new file mode 100644 index 0000000..e13199f --- /dev/null +++ b/Assignment_2.py @@ -0,0 +1,4 @@ +str=input("Enter Words with hyphen-separated:") +str=str.split('-') +str.sort() +print('-'.join(str)) \ No newline at end of file diff --git a/Assignment_3.py b/Assignment_3.py new file mode 100644 index 0000000..a803463 --- /dev/null +++ b/Assignment_3.py @@ -0,0 +1,13 @@ +def perfect_num_checker(n): + sum=0 + for i in range(1,n+1): + if n % i == 0: + sum+=i + sum=sum//2 + if n == sum: + print(n, " is a perfet number") + else: + print(n, " is not a perfer number") + +n = int(input("Enter a number:")) +perfect_num_checker(n) \ No newline at end of file diff --git a/Assignment_4.py b/Assignment_4.py new file mode 100644 index 0000000..65cf8cf --- /dev/null +++ b/Assignment_4.py @@ -0,0 +1,92 @@ +import random +from tkinter import * + + +def generate(): + """This function is to get the random password value from random_pass function + and validate the value + """ + password = random_pass(password_length.get( + ), lowercase_len.get(), uppercase_len.get(), special_char.get()) + if password == 1: + password_lable.config(text='Total number of inputs are more than password length, please try again',fg='red', font=('Arial', 9)) + elif password == 2: + password_lable.config( text='Total number of inputs are less than password length, please try again', fg='red', font=('Arial', 9)) + else: + password_lable.config(text=f'Password is: {password}', fg='black', font=('Arial', 12)) + + + + + +def random_pass(pl,lc,uc,sc): + """This function is to pass the user inputs and generate random password + + Args: + pl (int): this is for the password length + lc (int): this is fo the lowercase letter length + uc (int): this is for the uppercase letter length + sc (int): this is for special charcters + + Returns: + string: the return is the generated random password + """ + password_length = int(pl) + lowercase_len = int(lc) + uppercase_len = int(uc) + special_char = sc + lowercase_alpha = "abcdefghijklmnopqrstuvwxyz" + uppercase_alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + password="" + if (lowercase_len+uppercase_len+len(special_char)) > password_length: + return 1 + elif (lowercase_len+uppercase_len+len(special_char)) < password_length: + return 2 + else: + lower = random.choices(lowercase_alpha, k=lowercase_len) + upper = random.choices(uppercase_alpha, k=uppercase_len) + lower.extend(upper) + lower.extend(special_char) + random.shuffle(lower) + print(lower) + for i in lower: + password+=i + return password + +screen = Tk() +title = screen.title('Random Password Generator') +canvas = Canvas(screen, width=400,height=500) +canvas.pack() + +password_length = Entry(screen, text='', font=('Arial', 12)) +password_length_label = Label(screen, text='Enter Password Length: ', font=('Arial', 12)) +canvas.create_window(200, 40, window=password_length_label) +canvas.create_window(200, 70, window=password_length) + +lowercase_len = Entry(screen, text='', font=('Arial', 12)) +lowercase_len_label = Label(screen, text='Enter number of lowercase letters: ', font=('Arial', 12)) +canvas.create_window(200, 120, window=lowercase_len_label) +canvas.create_window(200, 150, window=lowercase_len) + +uppercase_len = Entry(screen, text='', font=('Arial', 12)) +uppercase_len_label = Label(screen, text='Enter number of uppercase letters: ', font=('Arial', 12)) +canvas.create_window(200, 200, window=uppercase_len_label) +canvas.create_window(200, 230, window=uppercase_len) + +special_char = Entry(screen, text='', font=('Arial', 12)) +special_char_label = Label(screen, text='Enter any special characters: ', font=('Arial', 12)) +canvas.create_window(200, 280, window=special_char_label) +canvas.create_window(200, 300, window=special_char) + + +btn = Button(screen, text='Generate', font=('Arial', 15), bg='green', fg='#fff', command=generate) +canvas.create_window(200, 360, window=btn) +password_lable = Label(screen, text='') +canvas.create_window(200, 400, window=password_lable) + +screen.mainloop() + + + + + diff --git a/Bonus_1.py b/Bonus_1.py new file mode 100644 index 0000000..20e8585 --- /dev/null +++ b/Bonus_1.py @@ -0,0 +1,4 @@ +dict = [{'make': 'Nokia', 'model': 216, 'color': 'Black'}, {'make': 'Mi Max', + 'model': '2', 'color': 'Gold'}, {'make': 'Samsung', 'model': 7, 'color': 'Blue'}] +print('Sorting the List of dictionaries based on make:',sorted(dict, key=lambda i: i['make'])) +print('Sorting the List of dictionaries based on color:',sorted(dict, key=lambda i: i['color'])) \ No newline at end of file diff --git a/Bonuse_2.py b/Bonuse_2.py new file mode 100644 index 0000000..085f345 --- /dev/null +++ b/Bonuse_2.py @@ -0,0 +1,5 @@ +my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] +even_list = list(filter(lambda x: (x % 2 == 0), my_list)) +odd_list = list(filter(lambda x: (x % 2 != 0), my_list)) +print('Even numbers from the said list: ', even_list) +print('Odd numbers from the said list: ', odd_list)