diff --git a/1 File handle/File handle binary/Deleting record in a binary file.py b/1 File handle/File handle binary/Deleting record in a binary file.py
index dca55c2d140..41a5007b86c 100644
--- a/1 File handle/File handle binary/Deleting record in a binary file.py
+++ b/1 File handle/File handle binary/Deleting record in a binary file.py
@@ -10,11 +10,7 @@ def bdelete():
# Deleting the Roll no. entered by user
rno = int(input("Enter the Roll no. to be deleted: "))
with open("studrec.dat") as F:
- rec = []
- for i in stud:
- if i[0] == rno:
- continue
- rec.append(i)
+ rec = [i for i in stud if i[0] != rno]
pickle.dump(rec, F)
diff --git a/1 File handle/File handle binary/Update a binary file.py b/1 File handle/File handle binary/Update a binary file.py
index 19f16b955da..1f766cf6f0a 100644
--- a/1 File handle/File handle binary/Update a binary file.py
+++ b/1 File handle/File handle binary/Update a binary file.py
@@ -4,30 +4,27 @@
def update():
- F = open("class.dat", "rb+")
- S = pickle.load(F)
- found = 0
- rno = int(input("enter the roll number you want to update"))
- for i in S:
- if rno == i[0]:
- print("the currrent name is", i[1])
- i[1] = input("enter the new name")
- found = 1
- break
+ with open("class.dat", "rb+") as F:
+ S = pickle.load(F)
+ found = 0
+ rno = int(input("enter the roll number you want to update"))
+ for i in S:
+ if rno == i[0]:
+ print("the currrent name is", i[1])
+ i[1] = input("enter the new name")
+ found = 1
+ break
- if found == 0:
- print("Record not found")
+ if found == 0:
+ print("Record not found")
- else:
- F.seek(0)
- pickle.dump(S, F)
-
- F.close()
+ else:
+ F.seek(0)
+ pickle.dump(S, F)
update()
-F = open("class.dat", "rb")
-val = pickle.load(F)
-print(val)
-F.close()
+with open("class.dat", "rb") as F:
+ val = pickle.load(F)
+ print(val)
diff --git a/1 File handle/File handle binary/Update a binary file2.py b/1 File handle/File handle binary/Update a binary file2.py
index 26fb365e687..0f4f723e27a 100644
--- a/1 File handle/File handle binary/Update a binary file2.py
+++ b/1 File handle/File handle binary/Update a binary file2.py
@@ -4,28 +4,26 @@
def update():
- F = open("studrec.dat", "rb+")
- value = pickle.load(F)
- found = 0
- roll = int(input("Enter the roll number of the record"))
- for i in value:
- if roll == i[0]:
- print("current name", i[1])
- print("current marks", i[2])
- i[1] = input("Enter the new name")
- i[2] = int(input("Enter the new marks"))
- found = 1
-
- if found == 0:
- print("Record not found")
-
- else:
- pickle.dump(value, F)
- F.seek(0)
- newval = pickle.load(F)
- print(newval)
-
- F.close()
+ with open("studrec.dat", "rb+") as F:
+ value = pickle.load(F)
+ found = 0
+ roll = int(input("Enter the roll number of the record"))
+ for i in value:
+ if roll == i[0]:
+ print("current name", i[1])
+ print("current marks", i[2])
+ i[1] = input("Enter the new name")
+ i[2] = int(input("Enter the new marks"))
+ found = 1
+
+ if found == 0:
+ print("Record not found")
+
+ else:
+ pickle.dump(value, F)
+ F.seek(0)
+ newval = pickle.load(F)
+ print(newval)
update()
diff --git a/1 File handle/File handle binary/question 1 (elegible for remedial, top marks).py b/1 File handle/File handle binary/question 1 (elegible for remedial, top marks).py
index 08ac16f3e32..68580d1985e 100644
--- a/1 File handle/File handle binary/question 1 (elegible for remedial, top marks).py
+++ b/1 File handle/File handle binary/question 1 (elegible for remedial, top marks).py
@@ -8,70 +8,67 @@
"""
+
# also find no. of children who got top marks
import pickle
-F = open("class.dat", "ab")
-list = [
- [1, "Ramya", 30],
- [2, "vaishnavi", 60],
- [3, "anuya", 40],
- [4, "kamala", 30],
- [5, "anuraag", 10],
- [6, "Reshi", 77],
- [7, "Biancaa.R", 100],
- [8, "sandhya", 65],
-]
+with open("class.dat", "ab") as F:
+ list = [
+ [1, "Ramya", 30],
+ [2, "vaishnavi", 60],
+ [3, "anuya", 40],
+ [4, "kamala", 30],
+ [5, "anuraag", 10],
+ [6, "Reshi", 77],
+ [7, "Biancaa.R", 100],
+ [8, "sandhya", 65],
+ ]
-pickle.dump(list, F)
-F.close()
+ pickle.dump(list, F)
def remcount():
- F = open("class.dat", "rb")
- val = pickle.load(F)
- count = 0
+ with open("class.dat", "rb") as F:
+ val = pickle.load(F)
+ count = 0
- for i in val:
- if i[2] <= 40:
- print(i, "eligible for remedial")
- count += 1
- print("the total number of students are", count)
- F.close()
+ for i in val:
+ if i[2] <= 40:
+ print(i, "eligible for remedial")
+ count += 1
+ print("the total number of students are", count)
remcount()
def firstmark():
- F = open("class.dat", "rb")
- val = pickle.load(F)
- main = []
- count = 0
+ with open("class.dat", "rb") as F:
+ val = pickle.load(F)
+ main = []
+ count = 0
- for i in val:
- data = i[2]
- main.append(data)
+ for i in val:
+ data = i[2]
+ main.append(data)
- top = max(main)
- print(top, "is the first mark")
+ top = max(main)
+ print(top, "is the first mark")
- F.seek(0)
- for i in val:
- if top == i[2]:
- print(i)
- print("congrats")
- count += 1
+ F.seek(0)
+ for i in val:
+ if top == i[2]:
+ print(i)
+ print("congrats")
+ count += 1
- print("the total number of students who secured top marks are", count)
- F.close()
+ print("the total number of students who secured top marks are", count)
firstmark()
-F = open("class.dat", "rb")
-val = pickle.load(F)
-print(val)
-F.close()
+with open("class.dat", "rb") as F:
+ val = pickle.load(F)
+ print(val)
diff --git a/1 File handle/File handle binary/search record in binary file.py b/1 File handle/File handle binary/search record in binary file.py
index fd58d246bb9..87855f1dbc4 100644
--- a/1 File handle/File handle binary/search record in binary file.py
+++ b/1 File handle/File handle binary/search record in binary file.py
@@ -4,21 +4,20 @@
def binary_search():
- F = open("studrec.dat", "rb")
- # your file path will be different
- value = pickle.load(F)
- search = 0
- rno = int(input("Enter the roll number of the student"))
+ with open("studrec.dat", "rb") as F:
+ # your file path will be different
+ value = pickle.load(F)
+ search = 0
+ rno = int(input("Enter the roll number of the student"))
- for i in value:
- if i[0] == rno:
- print("Record found successfully")
- print(i)
- search = 1
+ for i in value:
+ if i[0] == rno:
+ print("Record found successfully")
+ print(i)
+ search = 1
- if search == 0:
- print("Sorry! record not found")
- F.close()
+ if search == 0:
+ print("Sorry! record not found")
binary_search()
diff --git a/1 File handle/File handle text/input,output and error streams.py b/1 File handle/File handle text/input,output and error streams.py
index cecd268979b..e0a6008dcd5 100644
--- a/1 File handle/File handle text/input,output and error streams.py
+++ b/1 File handle/File handle text/input,output and error streams.py
@@ -8,9 +8,8 @@
while True:
ch = F.readlines()
- for (i) in ch: # ch is the whole file,for i in ch gives lines, for j in i gives letters,for j in i.split gives words
+ for i in ch:
print(i, end="")
- else:
- sys.stderr.write("End of file reached")
- break
+ sys.stderr.write("End of file reached")
+ break
diff --git a/1 File handle/File handle text/special symbol after word.py b/1 File handle/File handle text/special symbol after word.py
index 353a98cca87..7c92cd3bd7d 100644
--- a/1 File handle/File handle text/special symbol after word.py
+++ b/1 File handle/File handle text/special symbol after word.py
@@ -1,16 +1,15 @@
-F = open("happy.txt", "r")
-# method 1
-val = F.read()
-val = val.split()
-for i in val:
- print(i, "*", end="")
-print("\n")
+with open("happy.txt", "r") as F:
+ # method 1
+ val = F.read()
+ val = val.split()
+ for i in val:
+ print(i, "*", end="")
+ print("\n")
-# method 2
-F.seek(0)
-value = F.readlines()
-for line in value:
- for word in line.split():
- print(word, "*", end="")
-F.close()
+ # method 2
+ F.seek(0)
+ value = F.readlines()
+ for line in value:
+ for word in line.split():
+ print(word, "*", end="")
diff --git a/A solution to project euler problem 3.py b/A solution to project euler problem 3.py
index 3b34b655083..4c218f2be7e 100644
--- a/A solution to project euler problem 3.py
+++ b/A solution to project euler problem 3.py
@@ -36,7 +36,7 @@ def solution(n: int = 600851475143) -> int:
TypeError: Parameter n must be int or passive of cast to int.
"""
try:
- n = int(n)
+ n = n
except (TypeError, ValueError):
raise TypeError("Parameter n must be int or passive of cast to int.")
if n <= 0:
@@ -55,7 +55,7 @@ def solution(n: int = 600851475143) -> int:
ans = i
while n % i == 0:
- n = n / i
+ n /= i
i += 1
diff --git a/AreaOfTriangle.py b/AreaOfTriangle.py
index 9d866337e0b..1c454e885a3 100644
--- a/AreaOfTriangle.py
+++ b/AreaOfTriangle.py
@@ -14,4 +14,4 @@
# calculate the area
area = (s*(s-a)*(s-b)*(s-c)) ** 0.5
-print('The area of the triangle is: ' + area)
+print(f'The area of the triangle is: {area}')
diff --git a/Assembler/assembler.py b/Assembler/assembler.py
index c4773c583dd..3eacd708114 100644
--- a/Assembler/assembler.py
+++ b/Assembler/assembler.py
@@ -53,10 +53,9 @@ def loadFile(fileName):
loadFile: This function loads the file and reads its lines.
"""
global lines
- fo = open(fileName)
- for line in fo:
- lines.append(line)
- fo.close()
+ with open(fileName) as fo:
+ for line in fo:
+ lines.append(line)
def scanner(string):
diff --git a/Automated Scheduled Call Reminders/caller.py b/Automated Scheduled Call Reminders/caller.py
index 3082dbb7193..d351f223b64 100644
--- a/Automated Scheduled Call Reminders/caller.py
+++ b/Automated Scheduled Call Reminders/caller.py
@@ -42,7 +42,7 @@ def search():
timestamp = datetime.now().strftime("%H:%M")
five_minutes_prior = (timestamp + timedelta(minutes=5)).strftime("%H:%M")
for doc in list_of_docs:
- if doc["from"][0:5] == five_minutes_prior:
+ if doc["from"][:5] == five_minutes_prior:
phone_number = doc["phone"]
call = client.calls.create(
to=phone_number,
diff --git a/Base Converter Number system.py b/Base Converter Number system.py
index 9f36a6bd77f..b319dd410a5 100644
--- a/Base Converter Number system.py
+++ b/Base Converter Number system.py
@@ -1,36 +1,29 @@
def base_check(xnumber, xbase):
- for char in xnumber[len(xnumber ) -1]:
- if int(char) >= int(xbase):
- return False
- return True
+ return all(int(char) < int(xbase) for char in xnumber[len(xnumber ) -1])
def convert_from_10(xnumber, xbase, arr, ybase):
- if int(xbase) == 2 or int(xbase) == 4 or int(xbase) == 6 or int(xbase) == 8:
+ if int(xbase) in {2, 4, 6, 8}:
if xnumber == 0:
return arr
- else:
- quotient = int(xnumber) // int(xbase)
- remainder = int(xnumber) % int(xbase)
- arr.append(remainder)
- dividend = quotient
- convert_from_10(dividend, xbase, arr, base)
+ quotient, remainder = divmod(int(xnumber), int(xbase))
+ arr.append(remainder)
+ dividend = quotient
+ convert_from_10(dividend, xbase, arr, base)
elif int(xbase) == 16:
if int(xnumber) == 0:
return arr
- else:
- quotient = int(xnumber) // int(xbase)
- remainder = int(xnumber) % int(xbase)
- if remainder > 9:
- if remainder == 10: remainder = 'A'
- if remainder == 11: remainder = 'B'
- if remainder == 12: remainder = 'C'
- if remainder == 13: remainder = 'D'
- if remainder == 14: remainder = 'E'
- if remainder == 15: remainder = 'F'
- arr.append(remainder)
- dividend = quotient
- convert_from_10(dividend, xbase, arr, ybase)
+ quotient, remainder = divmod(int(xnumber), int(xbase))
+ if remainder > 9:
+ if remainder == 10: remainder = 'A'
+ if remainder == 11: remainder = 'B'
+ if remainder == 12: remainder = 'C'
+ if remainder == 13: remainder = 'D'
+ if remainder == 14: remainder = 'E'
+ if remainder == 15: remainder = 'F'
+ arr.append(remainder)
+ dividend = quotient
+ convert_from_10(dividend, xbase, arr, ybase)
def convert_to_10(xnumber, xbase, arr, ybase):
if int(xbase) == 10:
for char in xnumber:
diff --git a/Battery_notifier.py b/Battery_notifier.py
index 2f45301bc1e..dde55b19ae6 100644
--- a/Battery_notifier.py
+++ b/Battery_notifier.py
@@ -12,10 +12,7 @@
# notification to desktop
# help(Notification)
if charging:
- if percent == 100:
- charging_message = "Unplug your Charger"
- else:
- charging_message = "Charging"
+ charging_message = "Unplug your Charger" if percent == 100 else "Charging"
else:
charging_message = "Not Charging"
message = str(percent) + "% Charged\n" + charging_message
diff --git a/Binary Coefficients.py b/Binary Coefficients.py
index 3039858d55f..1735e29bae7 100644
--- a/Binary Coefficients.py
+++ b/Binary Coefficients.py
@@ -1,17 +1,12 @@
def pascal_triangle(lineNumber):
- list1 = list()
- list1.append([1])
+ list1 = [[1]]
i = 1
while i <= lineNumber:
- j = 1
- l = []
- l.append(1)
- while j < i:
- l.append(list1[i - 1][j] + list1[i - 1][j - 1])
- j = j + 1
+ l = [1]
+ l.extend(list1[i - 1][j] + list1[i - 1][j - 1] for j in range(1, i))
l.append(1)
list1.append(l)
- i = i + 1
+ i += 1
return list1
diff --git a/Binary_search.py b/Binary_search.py
index 118f4461bb0..93a0962cffe 100644
--- a/Binary_search.py
+++ b/Binary_search.py
@@ -37,6 +37,6 @@ def binary_search(arr, l, r, x):
# printing the output
if result != -1:
- print("Element is present at index {}".format(result))
+ print(f"Element is present at index {result}")
else:
print("Element is not present in array")
diff --git a/BlackJack_game/blackjack.py b/BlackJack_game/blackjack.py
index 858257ae39f..856bdd0b81e 100644
--- a/BlackJack_game/blackjack.py
+++ b/BlackJack_game/blackjack.py
@@ -60,9 +60,9 @@
print(f"{'*'*24}Dealer is the Winner !!{'*'*14}")
exit()
-if sum(d_cards) == 21 and sum(p_cards) == 21:
- print(f"{'*'*17}The match is tie !!{'*'*25}")
- exit()
+ if sum(p_cards) == 21:
+ print(f"{'*'*17}The match is tie !!{'*'*25}")
+ exit()
# function to show the dealer's choice
@@ -72,20 +72,17 @@ def dealer_choice():
random.shuffle(deck)
d_cards.append(deck.pop())
- print("Dealer has total " + str(sum(d_cards)) + "with the cards ", d_cards)
+ print(f"Dealer has total {str(sum(d_cards))}with the cards ", d_cards)
if sum(p_cards) == sum(d_cards):
print(f"{'*'*15}The match is tie !!{'*'*15}")
exit()
if sum(d_cards) == 21:
- if sum(p_cards) < 21:
+ if sum(p_cards) < 21 or sum(p_cards) != 21:
print(f"{'*'*23}Dealer is the Winner !!{'*'*18}")
- elif sum(p_cards) == 21:
- print(f"{'*'*20}There is tie !!{'*'*26}")
else:
- print(f"{'*'*23}Dealer is the Winner !!{'*'*18}")
-
+ print(f"{'*'*20}There is tie !!{'*'*26}")
elif sum(d_cards) < 21:
if sum(p_cards) < 21 and sum(p_cards) < sum(d_cards):
print(f"{'*'*23}Dealer is the Winner !!{'*'*18}")
@@ -94,13 +91,10 @@ def dealer_choice():
if 21 > sum(p_cards) > sum(d_cards):
print(f"{'*'*22}Player is winner !!{'*'*22}")
+ elif sum(p_cards) < 21 or sum(p_cards) == 21:
+ print(f"{'*'*22}Player is winner !!{'*'*22}")
else:
- if sum(p_cards) < 21:
- print(f"{'*'*22}Player is winner !!{'*'*22}")
- elif sum(p_cards) == 21:
- print(f"{'*'*22}Player is winner !!{'*'*22}")
- else:
- print(f"{'*'*23}Dealer is the Winner !!{'*'*18}")
+ print(f"{'*'*23}Dealer is the Winner !!{'*'*18}")
while sum(p_cards) < 21:
@@ -110,7 +104,7 @@ def dealer_choice():
if k == 1:
random.shuffle(deck)
p_cards.append(deck.pop())
- print("You have a total of " + str(sum(p_cards)) + " with the cards ", p_cards)
+ print(f"You have a total of {str(sum(p_cards))} with the cards ", p_cards)
if sum(p_cards) > 21:
print(f'{"*"*13}You are BUSTED !{"*"*13}\n Dealer Wins !!')
if sum(p_cards) == 21:
diff --git a/BlackJack_game/blackjack_rr.py b/BlackJack_game/blackjack_rr.py
index d7c46b83cf6..903819f4214 100644
--- a/BlackJack_game/blackjack_rr.py
+++ b/BlackJack_game/blackjack_rr.py
@@ -9,11 +9,12 @@ class Colour:
suits = (
- Colour.RED + "Hearts" + Colour.END,
- Colour.RED + "Diamonds" + Colour.END,
- Colour.BLACK + "Spades" + Colour.END,
- Colour.BLACK + "Clubs" + Colour.END,
+ f"{Colour.RED}Hearts{Colour.END}",
+ f"{Colour.RED}Diamonds{Colour.END}",
+ f"{Colour.BLACK}Spades{Colour.END}",
+ f"{Colour.BLACK}Clubs{Colour.END}",
)
+
ranks = (
"Two",
"Three",
@@ -54,27 +55,23 @@ def __init__(self, suit, rank):
self.rank = rank
def __str__(self):
- return self.rank + " of " + self.suit
+ return f"{self.rank} of {self.suit}"
class Deck:
def __init__(self):
self.deck = []
for suit in suits:
- for rank in ranks:
- self.deck.append(Card(suit, rank))
+ self.deck.extend(Card(suit, rank) for rank in ranks)
def __str__(self):
- deck_comp = ""
- for card in self.deck:
- deck_comp += "\n " + card.__str__()
+ deck_comp = "".join("\n " + card.__str__() for card in self.deck)
def shuffle(self):
random.shuffle(self.deck)
def deal(self):
- single_card = self.deck.pop()
- return single_card
+ return self.deck.pop()
class Hand:
diff --git a/BlackJack_game/blackjack_simulate.py b/BlackJack_game/blackjack_simulate.py
index ae1706f6888..3bb6859f085 100644
--- a/BlackJack_game/blackjack_simulate.py
+++ b/BlackJack_game/blackjack_simulate.py
@@ -61,7 +61,7 @@ def __repr__(self):
return fmt_card.format(suit="*-Back-*", rank="*-Back-*")
def show(self):
- print(str(self))
+ print(self)
class Deck:
@@ -80,9 +80,9 @@ def __len__(self):
return len(self.cards)
def built(self):
+ suits = "Spades Heart Clubs Diamonds".split()
+ ranks = list(range(1, 14))
for _ in range(self.num):
- ranks = [x for x in range(1, 14)]
- suits = "Spades Heart Clubs Diamonds".split()
for suit in suits:
for rank in ranks:
card = Card(suit, rank)
@@ -144,7 +144,7 @@ def bet_amount(self):
@bet_amount.setter
def bet_amount(self, value):
type_tips = "Please give a integer"
- amount_tips = "Your chips should between 1 - " + str(self.amount) + " "
+ amount_tips = f"Your chips should between 1 - {str(self.amount)} "
try:
value = int(value)
except ValueError:
@@ -157,13 +157,10 @@ def bet_amount(self, value):
self._bet_amount = value
def double_bet(self):
- if self.can_double():
- self._bet_amount *= 2
- self.is_double = True
- else:
- over_tips = "Not enough chips || "
- cannot_double = "CAN'T DO DOUBLE"
- raise ValueError(Chips.get_tips(over_tips + cannot_double))
+ if not self.can_double():
+ raise ValueError(Chips.get_tips("Not enough chips || " + "CAN'T DO DOUBLE"))
+ self._bet_amount *= 2
+ self.is_double = True
@property
def insurance(self):
@@ -229,18 +226,16 @@ def unveil_card(self):
def calculate_point(self):
def _extract_rank():
raw_ranks = [card.rank for card in self.hand]
- cook_ranks = [10 if rank > 10 else rank for rank in raw_ranks]
+ cook_ranks = [min(rank, 10) for rank in raw_ranks]
return cook_ranks
def _sum_up(ranks):
rank_one = sum(ranks)
- rank_eleven = sum([11 if rank == 1 else rank for rank in ranks])
+ rank_eleven = sum(11 if rank == 1 else rank for rank in ranks)
# Over or has 2 Ace
if (ranks[::-1] == ranks) and (1 in ranks):
return 11 + len(ranks) - 1
- if rank_eleven <= BLACK_JACK:
- return rank_eleven
- return rank_one
+ return rank_eleven if rank_eleven <= BLACK_JACK else rank_one
points = _extract_rank()
self.point = _sum_up(points)
@@ -265,7 +260,7 @@ def showing(self):
def unveiling(self):
self.calculate_point()
- points_fmt = "My point is: {}".format(str(self.point))
+ points_fmt = f"My point is: {str(self.point)}"
self.speak(points_fmt)
self.unveil_card()
@@ -314,8 +309,8 @@ def select_choice(self, pattern):
}
enu_choice = enumerate((operation.get(p) for p in pattern), 1)
dict_choice = dict(enu_choice)
+ choice_fmt = "\t[{index}] {operation}"
for index, operator in dict_choice.items():
- choice_fmt = "\t[{index}] {operation}"
print(choice_fmt.format(index=index, operation=operator))
return dict_choice
@@ -429,7 +424,7 @@ def play(self):
if not self.bust:
self.is_surrender()
self.winner = self.get_winner()
- self.res = "Winner is " + self.winner
+ self.res = f"Winner is {self.winner}"
os.system("clear")
self.calculate_chips()
self.result_exhibit()
@@ -526,7 +521,7 @@ def get_select(select_max, prompt=">> ", general_err=""):
def chips_manage(self):
if self.choice == "Insurance":
- err = "The amount should under " + str(self.player.chips.current_amount())
+ err = f"The amount should under {str(self.player.chips.current_amount())}"
pay_ins = self.get_select(
self.player.chips.current_amount(),
prompt="Insurance amount >> ",
@@ -548,10 +543,9 @@ def card_manage(self):
self.player.obtain_card(self.deck)
if self.player.is_point(">", BLACK_JACK):
raise ValueError("Player BUST")
- else:
- self.dealer.strategy_trigger(self.deck)
- if self.dealer.is_point(">", BLACK_JACK):
- raise ValueError("Dealer BUST")
+ self.dealer.strategy_trigger(self.deck)
+ if self.dealer.is_point(">", BLACK_JACK):
+ raise ValueError("Dealer BUST")
elif self.choice != "Surrender":
if not self.player.chips.is_insurance:
self.dealer.strategy_trigger(self.deck)
@@ -574,17 +568,11 @@ def get_winner(self):
if self.choice == "Surrender":
return "Dealer"
elif self.choice == "Insurance":
- if self.player.is_point("==", BLACK_JACK):
- return "Dealer"
- return "Player"
-
+ return "Dealer" if self.player.is_point("==", BLACK_JACK) else "Player"
if self.choice in ("Double-down", "Stand"):
self.player.calculate_point()
self.dealer.calculate_point()
- if self.player.point > self.dealer.point:
- return "Player"
- return "Dealer"
-
+ return "Player" if self.player.point > self.dealer.point else "Dealer"
return "Both"
def calculate_chips(self):
diff --git a/BoardGame-CLI/snakeLadder.py b/BoardGame-CLI/snakeLadder.py
index 956f690d4be..e39efbd4b87 100644
--- a/BoardGame-CLI/snakeLadder.py
+++ b/BoardGame-CLI/snakeLadder.py
@@ -50,7 +50,7 @@ def play():
print("/"*20)
for i in players:
- n = input("{}'s turn: ".format(i)) or 1
+ n = input(f"{i}'s turn: ") or 1
n = int(n)
if players[i] < 100:
diff --git a/BoardGame-CLI/uno.py b/BoardGame-CLI/uno.py
index 4f36372a5f8..3ff1e62460d 100644
--- a/BoardGame-CLI/uno.py
+++ b/BoardGame-CLI/uno.py
@@ -16,13 +16,12 @@ def buildDeck():
wilds = ["Wild", "Wild Draw Four"]
for colour in colours:
for value in values:
- cardVal = "{} {}".format(colour, value)
+ cardVal = f"{colour} {value}"
deck.append(cardVal)
if value != 0:
deck.append(cardVal)
- for i in range(4):
- deck.append(wilds[0])
- deck.append(wilds[1])
+ for _ in range(4):
+ deck.extend((wilds[0], wilds[1]))
print(deck)
return deck
@@ -48,10 +47,7 @@ def shuffleDeck(deck):
def drawCards(numCards):
- cardsDrawn = []
- for x in range(numCards):
- cardsDrawn.append(unoDeck.pop(0))
- return cardsDrawn
+ return [unoDeck.pop(0) for _ in range(numCards)]
"""
@@ -62,13 +58,11 @@ def drawCards(numCards):
def showHand(player, playerHand):
- print("Player {}'s Turn".format(players_name[player]))
+ print(f"Player {players_name[player]}'s Turn")
print("Your Hand")
print("------------------")
- y = 1
- for card in playerHand:
- print("{}) {}".format(y, card))
- y += 1
+ for y, card in enumerate(playerHand, start=1):
+ print(f"{y}) {card}")
print("")
@@ -80,19 +74,15 @@ def showHand(player, playerHand):
def canPlay(colour, value, playerHand):
- for card in playerHand:
- if "Wild" in card:
- return True
- elif colour in card or value in card:
- return True
- return False
+ return any(
+ "Wild" in card or colour in card or value in card
+ for card in playerHand
+ )
unoDeck = buildDeck()
unoDeck = shuffleDeck(unoDeck)
unoDeck = shuffleDeck(unoDeck)
-discards = []
-
players_name = []
players = []
colours = ["Red", "Green", "Yellow", "Blue"]
@@ -101,30 +91,26 @@ def canPlay(colour, value, playerHand):
numPlayers = int(
input("Invalid. Please enter a number between 2-4.\nHow many players?"))
for player in range(numPlayers):
- players_name.append(input("Enter player {} name: ".format(player+1)))
+ players_name.append(input(f"Enter player {player + 1} name: "))
players.append(drawCards(5))
playerTurn = 0
playDirection = 1
playing = True
-discards.append(unoDeck.pop(0))
+discards = [unoDeck.pop(0)]
splitCard = discards[0].split(" ", 1)
currentColour = splitCard[0]
-if currentColour != "Wild":
- cardVal = splitCard[1]
-else:
- cardVal = "Any"
-
+cardVal = splitCard[1] if currentColour != "Wild" else "Any"
while playing:
showHand(playerTurn, players[playerTurn])
- print("Card on top of discard pile: {}".format(discards[-1]))
+ print(f"Card on top of discard pile: {discards[-1]}")
if canPlay(currentColour, cardVal, players[playerTurn]):
cardChosen = int(input("Which card do you want to play?"))
while not canPlay(currentColour, cardVal, [players[playerTurn][cardChosen-1]]):
cardChosen = int(
input("Not a valid card. Which card do you want to play?"))
- print("You played {}".format(players[playerTurn][cardChosen-1]))
+ print(f"You played {players[playerTurn][cardChosen - 1]}")
discards.append(players[playerTurn].pop(cardChosen-1))
# cheak if player won
@@ -136,13 +122,10 @@ def canPlay(colour, value, playerHand):
# cheak for special cards
splitCard = discards[-1].split(" ", 1)
currentColour = splitCard[0]
- if len(splitCard) == 1:
- cardVal = "Any"
- else:
- cardVal = splitCard[1]
+ cardVal = "Any" if len(splitCard) == 1 else splitCard[1]
if currentColour == "Wild":
for x in range(len(colours)):
- print("{}) {}".format(x+1, colours[x]))
+ print(f"{x + 1}) {colours[x]}")
newColour = int(
input("What colour would you like to choose? "))
while newColour < 1 or newColour > 4:
@@ -183,4 +166,4 @@ def canPlay(colour, value, playerHand):
playerTurn = numPlayers-1
print("Game Over")
-print("{} is the Winner!".format(winner))
+print(f"{winner} is the Winner!")
diff --git a/BruteForce.py b/BruteForce.py
index 46b17844e26..b6533d5b7ac 100644
--- a/BruteForce.py
+++ b/BruteForce.py
@@ -35,20 +35,12 @@ def getChars():
Método para obter uma lista contendo todas as
letras do alfabeto e números.
"""
- chars = []
-
- # Acrescenta à lista todas as letras maiúsculas
- for id_ in range(ord("A"), ord("Z") + 1):
- chars.append(chr(id_))
+ chars = [chr(id_) for id_ in range(ord("A"), ord("Z") + 1)]
# Acrescenta à lista todas as letras minúsculas
- for id_ in range(ord("a"), ord("z") + 1):
- chars.append(chr(id_))
-
+ chars.extend(chr(id_) for id_ in range(ord("a"), ord("z") + 1))
# Acrescenta à lista todos os números
- for number in range(10):
- chars.append(str(number))
-
+ chars.extend(str(number) for number in range(10))
return chars
@@ -66,10 +58,7 @@ def getChars():
def testFunction(password):
global pw
- if password == pw:
- return True
- else:
- return False
+ return password == pw
# Obtém os dígitos que uma senha pode ter
chars = getChars()
diff --git a/CRC/crc.py b/CRC/crc.py
index d3d302244b7..83c53de54d0 100644
--- a/CRC/crc.py
+++ b/CRC/crc.py
@@ -36,9 +36,7 @@ def crc_check(data, div):
original_data = data
data = data + ("0" * (len(div) - 1))
crc = crc_check(data, div)
- crc_str = ""
- for c in crc:
- crc_str += c
+ crc_str = "".join(crc)
print("Sent data: ", original_data + crc_str)
sent_data = original_data + crc_str
print(
@@ -49,7 +47,7 @@ def crc_check(data, div):
print("Receiver side remainder: ", remainder)
print("Continue [Y/N]:")
ch = input()
- if ch == "N" or ch == "n":
+ if ch in ["N", "n"]:
break
else:
continue
diff --git a/Caesar Cipher Encoder & Decoder.py b/Caesar Cipher Encoder & Decoder.py
index 7bd078e2849..e71c6044b8e 100644
--- a/Caesar Cipher Encoder & Decoder.py
+++ b/Caesar Cipher Encoder & Decoder.py
@@ -40,20 +40,14 @@ def encode():
text = text.upper()
for char in text:
ascii = ord(char)
- if ascii > 90:
+ if ascii <= 90 and ascii < 65 or ascii > 90:
new_ascii = ascii
else:
- if ascii < 65:
- new_ascii = ascii
- else:
- new_ascii = ascii + key
- if new_ascii > 90:
- new_ascii = new_ascii - 26
- else:
- new_ascii = new_ascii
+ new_ascii = ascii + key
+ new_ascii = new_ascii - 26 if new_ascii > 90 else new_ascii
encoded = chr(new_ascii)
encoded_cipher = encoded_cipher + encoded
- print("Encoded text: " + encoded_cipher)
+ print(f"Encoded text: {encoded_cipher}")
@@ -61,24 +55,17 @@ def decode():
cipher = input("\n[>] Enter your cipher text: ")
print("Posiblities of cipher text are: \n")
cipher = cipher.lower()
+ decoded = ""
for i in range(1, 26):
- decoded = ""
decoded_cipher = ""
for char in cipher:
ascii = ord(char)
- if ascii < 97:
+ if ascii >= 97 and ascii > 122 or ascii < 97:
new_ascii = ascii
else:
- if ascii > 122:
- new_ascii = ascii
- else:
- new_ascii = ascii - int(i)
- if new_ascii < 97:
- new_ascii = new_ascii + 26
- else:
- new_ascii = new_ascii
- decoded = chr(new_ascii)
- decoded_cipher = decoded_cipher + decoded
+ new_ascii = ascii - int(i)
+ new_ascii = new_ascii + 26 if new_ascii < 97 else new_ascii
+ decoded_cipher = decoded_cipher + chr(new_ascii)
print("\n" + decoded_cipher)
diff --git a/Calculate resistance.py b/Calculate resistance.py
index 10c7a5ad3e2..c21d8634435 100644
--- a/Calculate resistance.py
+++ b/Calculate resistance.py
@@ -1,9 +1,6 @@
def res(R1, R2):
sum = R1 + R2
- if (option =="series"):
- return sum
- else:
- return (R1 * R2)/(R1 + R2)
+ return sum if (option =="series") else (R1 * R2)/(R1 + R2)
Resistance1 = int(input("Enter R1 : "))
Resistance2 = int(input("Enter R2 : "))
option = str(input("Enter series or parallel :"))
diff --git a/Cat/cat.py b/Cat/cat.py
index 552ed6c1e7a..db77125448c 100644
--- a/Cat/cat.py
+++ b/Cat/cat.py
@@ -26,7 +26,7 @@ def with_files(files):
"""Executes when file(s) is/are specified."""
try:
# Read each file's contents and store them
- file_contents = [contents for contents in [open(file).read() for file in files]]
+ file_contents = [open(file).read() for file in files]
except OSError as err:
# This executes when there's an error (e.g. FileNotFoundError)
exit(print(f"cat: error reading files ({err})"))
@@ -41,10 +41,7 @@ def no_files():
# Get input, output the input, repeat
while True:
print(input())
- # Graceful exit for Ctrl + C, Ctrl + D
- except KeyboardInterrupt:
- exit()
- except EOFError:
+ except (KeyboardInterrupt, EOFError):
exit()
def main():
diff --git a/Checker_game_by_dz/modules/checker.py b/Checker_game_by_dz/modules/checker.py
index 8525435aef0..36f8985c14d 100644
--- a/Checker_game_by_dz/modules/checker.py
+++ b/Checker_game_by_dz/modules/checker.py
@@ -49,8 +49,7 @@ def _move(self, row, col):
piece = self.board.get_piece(row, col)
if (self.select) and (piece == 0) and (row, col) in self.valid_moves:
self.board.move(self.select, row, col)
- skip = self.valid_moves[(row, col)]
- if skip:
+ if skip := self.valid_moves[(row, col)]:
self.board.remove(skip)
self.chg_turn()
else:
@@ -71,7 +70,4 @@ def draw_moves(self, moves):
# for changing the turn
def chg_turn(self):
self.valid_moves = {}
- if self.turn == black:
- self.turn = white
- else:
- self.turn = black
+ self.turn = white if self.turn == black else black
diff --git a/Checker_game_by_dz/modules/checker_board.py b/Checker_game_by_dz/modules/checker_board.py
index b14df11b360..5830718e8a1 100644
--- a/Checker_game_by_dz/modules/checker_board.py
+++ b/Checker_game_by_dz/modules/checker_board.py
@@ -31,7 +31,7 @@ def move(self, piece, row, col):
self.board[piece.row][piece.col],
)
piece.move(row, col)
- if row == rows - 1 or row == 0:
+ if row in [rows - 1, 0]:
piece.make_king()
if piece.color == white:
self.white_k += 1
@@ -71,9 +71,7 @@ def get_valid_moves(self, piece):
row = piece.row
if piece.color == black or piece.king:
- moves.update(
- self._traverse_l(row - 1, max(row - 3, -1), -1, piece.color, l)
- )
+ moves |= self._traverse_l(row - 1, max(row - 3, -1), -1, piece.color, l)
moves.update(
self._traverse_r(row - 1, max(row - 3, -1), -1, piece.color, r)
)
@@ -121,13 +119,8 @@ def _traverse_l(self, start, stop, step, color, l, skip=[]):
moves[(r, l)] = last
if last:
- if step == -1:
- row = max(r - 3, 0)
- else:
- row = min(r + 3, rows)
- moves.update(
- self._traverse_l(r + step, row, step, color, l - 1, skip=last)
- )
+ row = max(r - 3, 0) if step == -1 else min(r + 3, rows)
+ moves |= self._traverse_l(r + step, row, step, color, l - 1, skip=last)
moves.update(
self._traverse_r(r + step, row, step, color, l + 1, skip=last)
)
@@ -157,15 +150,11 @@ def _traverse_r(self, start, stop, step, color, right, skip=[]):
moves[(r, right)] = last
if last:
- if step == -1:
- row = max(r - 3, 0)
- else:
- row = min(r + 3, rows)
- moves.update(
- self._traverse_l(
- r + step, row, step, color, right - 1, skip=last
- )
+ row = max(r - 3, 0) if step == -1 else min(r + 3, rows)
+ moves |= self._traverse_l(
+ r + step, row, step, color, right - 1, skip=last
)
+
moves.update(
self._traverse_r(
r + step, row, step, color, right + 1, skip=last
diff --git a/Classification_human_or_horse.py b/Classification_human_or_horse.py
index 4aa069a855a..e4c65115f8a 100644
--- a/Classification_human_or_horse.py
+++ b/Classification_human_or_horse.py
@@ -49,6 +49,6 @@
classes = model.predict(images, batch_size=10)
print(classes[0])
if classes[0] > 0.5:
- print(filename + " is a human")
+ print(f"{filename} is a human")
else:
- print(filename + " is a horse")
+ print(f"{filename} is a horse")
diff --git a/Collatz-Conjecture.py b/Collatz-Conjecture.py
index bafea8c6d41..d1b96550a90 100644
--- a/Collatz-Conjecture.py
+++ b/Collatz-Conjecture.py
@@ -69,7 +69,7 @@ def sequence(number: float) -> float:
"""
modulo = number % 2 # The number modulo'd by 2
if modulo == 0: # If the result is 0,
- number = number / 2 # divide it by 2
+ number /= 2
else: # Otherwise,
number = 3 * number + 1 # multiply by 3 and add 1 (3x + 1)
return number
diff --git a/Colors/pixel_sort.py b/Colors/pixel_sort.py
index 3c3c06ea616..a846c81ad97 100644
--- a/Colors/pixel_sort.py
+++ b/Colors/pixel_sort.py
@@ -1,5 +1,6 @@
"""Pixel Sorting"""
+
# Importing Libraries
import cv2
import numpy as np
@@ -22,8 +23,8 @@
# the add_argument tells you what needs to be given as an input sp its help
args = parser.parse_args() # you take the arguments from command line
-os.makedirs("Image_sort/" + str(args.f))
-print(str(args.f).capitalize() + " directory is created.")
+os.makedirs(f"Image_sort/{str(args.f)}")
+print(f"{str(args.f).capitalize()} directory is created.")
# Defining all global variables
df = []
@@ -34,10 +35,9 @@
def createDataSet(val=0, data=[]):
global dict
dict[len(data)] = data
- if val != 0:
- if val == max(dict.keys()):
- final_df = pd.DataFrame(dict[val], columns=["Blue", "Green", "Red"])
- final_df.to_excel("Image_sort/" + str(args.f) + "/" + "output.xlsx")
+ if val != 0 and val == max(dict.keys()):
+ final_df = pd.DataFrame(dict[val], columns=["Blue", "Green", "Red"])
+ final_df.to_excel(f"Image_sort/{str(args.f)}/output.xlsx")
# Generating colors for each row of the frame
@@ -45,7 +45,7 @@ def generateColors(c_sorted, frame, row):
global df, img_list
height = 25
img = np.zeros((height, len(c_sorted), 3), np.uint8)
- for x in range(0, len(c_sorted)):
+ for x in range(len(c_sorted)):
r, g, b = c_sorted[x][0] * 255, c_sorted[x][1] * 255, c_sorted[x][2] * 255
c = [r, g, b]
df.append(c)
@@ -96,13 +96,14 @@ def findThreshold(lst, add):
def makeVideo():
out = cv2.VideoWriter(
- "Image_sort/" + str(args.f) + "/" + str(args.f) + ".mp4",
+ f"Image_sort/{str(args.f)}/{str(args.f)}.mp4",
cv2.VideoWriter_fourcc(*"mp4v"),
16,
(800, 500),
)
+
for count in tqdm(range(1, 500 + 1)):
- fileName = "Image_sort/" + str(args.f) + "/" + str(count) + ".jpg"
+ fileName = f"Image_sort/{str(args.f)}/{str(count)}.jpg"
img = cv2.imread(fileName)
out.write(img)
os.remove(fileName)
@@ -111,17 +112,17 @@ def makeVideo():
def main():
global img_list
- img = cv2.imread("Image/" + str(args.f) + ".jpg")
+ img = cv2.imread(f"Image/{str(args.f)}.jpg")
img = cv2.resize(img, (800, 500))
img_list.append(img)
height, width, _ = img.shape
print(">>> Row-wise Color sorting")
- for row in tqdm(range(0, height)):
+ for row in tqdm(range(height)):
color, color_n = [], []
add = []
- for col in range(0, width):
+ for col in range(width):
val = img[row][col].tolist()
# val includes all rgb values between the range of 0 to 1
@@ -141,7 +142,7 @@ def main():
# For the specific row , if any of the values are zero it gets sorted with color_n
if np.all(np.asarray(color)) == False:
- for ind, i in enumerate(color):
+ for i in color:
# Accessing every list within color
# Added to color_n if any of the element in the list is non-zero
# and their sum is less than threshold value
@@ -152,12 +153,10 @@ def main():
color_n.sort(key=lambda bgr: step(bgr, 8)) # step sorting
band, img = generateColors(color_n, img, row)
measure(len(color_n), row, col, height, width)
- cv2.imwrite("Image_sort/" + str(args.f) + "/" + str(row + 1) + ".jpg", img)
+ cv2.imwrite(f"Image_sort/{str(args.f)}/{str(row + 1)}.jpg", img)
# Writing down the final sorted image
- cv2.imwrite(
- "Image_sort/" + str(args.f) + "/" + str(args.f) + ".jpg", img
- ) # Displaying the final picture
+ cv2.imwrite(f"Image_sort/{str(args.f)}/{str(args.f)}.jpg", img)
print("\n>>> Formation of the Video progress of the pixel-sorted image")
makeVideo()
diff --git a/Colors/primary_colors.py b/Colors/primary_colors.py
index 107056fbd7d..31f6608d084 100644
--- a/Colors/primary_colors.py
+++ b/Colors/primary_colors.py
@@ -34,45 +34,25 @@ def simpleColor(r, g, b):
else:
return "CHOCOLATE"
- else: # Verde mas cerca de Rojo
- if rg > 60:
- return "NARANJA*"
- elif r > 125:
- return "AMARILLO"
- else:
- return "COCHOLATE"
+ elif rg > 60:
+ return "NARANJA*"
+ elif r > 125:
+ return "AMARILLO"
+ else:
+ return "COCHOLATE"
elif rg > rb: # Azul mayor que verde
- if bg < rb: # Verde mas cerca de Azul
- if gb < 60:
- if r > 150:
- return "ROJO 2"
- else:
- return "MARRON"
- elif g > 125:
- return "ROSADO"
- else:
- return "ROJO 3"
- else: # Verde mas cerca de Rojo
- if rb < 60:
- if r > 160:
- return "ROSADO*"
- else:
- return "ROJO"
- else:
- return "ROJO"
-
- else: # g y b iguales
- if rg > 20:
- if r >= 100 and b < 60:
- return "ROJO"
- elif r >= 100:
- return "ROJO"
- else:
- return "MARRON"
-
+ if bg >= rb:
+ return "ROSADO*" if rb < 60 and r > 160 else "ROJO"
+ if gb < 60:
+ return "ROJO 2" if r > 150 else "MARRON"
+ elif g > 125:
+ return "ROSADO"
else:
- return "GRIS"
- # VERDE ---------------------------------------------------
+ return "ROJO 3"
+ elif rg > 20:
+ return "ROJO" if r >= 100 and b < 60 or r >= 100 else "MARRON"
+ else:
+ return "GRIS"
elif g > r and g > b:
gb = diff(g, b) # distancia verde a azul
gr = diff(g, r) # distancia verde a rojo
@@ -82,33 +62,15 @@ def simpleColor(r, g, b):
rb = diff(r, b) # distancia de rojo a azul
- if r > b: # ROJO > AZUL
- if gr < gb: # Verde con Rojo
-
- if rb >= 150 and gr <= 20:
- return "AMARILLO"
- else:
- return "VERDE"
- else: # ...Verde
- return "VERDE"
-
- elif r < b: # AZUL > ROJO
- if gb < gr: # Verde con Azul
-
- if gb <= 20:
- return "TURQUESA"
- else:
- return "VERDE"
- else: # ...Verde
- return "VERDE"
-
- else: # r y b iguales
- if gb > 10:
- return "VERDE"
- else:
- return "GRIS"
+ if r <= b and r < b and gb < gr and gb <= 20:
+ return "TURQUESA"
+ elif r <= b and r < b or r <= b and gb > 10:
+ return "VERDE"
+ elif r <= b:
+ return "GRIS"
- # AZUL ------------------------------------------------------
+ else: # ROJO > AZUL
+ return "AMARILLO" if gr < gb and rb >= 150 and gr <= 20 else "VERDE"
elif b > r and b > g:
bg = diff(b, g) # distancia azul a verde
br = diff(b, r) # distancia azul a rojo
@@ -119,50 +81,28 @@ def simpleColor(r, g, b):
rg = diff(r, g) # distancia de rojo a verde
if g < r: # ROJO > VERDE
- if bg < rg: # Azul con Verde
- if bg <= 20:
- return "TURQUESA"
- else:
- return "CELESTE"
- else: # ...Azul
- if rg <= 20:
- if r >= 150:
- return "LILA"
- else:
- return "AZUL *************"
- else:
- return "AZUL"
+ if bg < rg:
+ return "TURQUESA" if bg <= 20 else "CELESTE"
+ if rg <= 20:
+ return "LILA" if r >= 150 else "AZUL *************"
+ else:
+ return "AZUL"
elif g > r: # VERDE > ROJO
if br < rg: # Azul con rojo
- if br <= 20:
- if r > 150 and g < 75:
- return "ROSADO FIUSHA"
- elif ir > 150:
- return "LILA"
- else:
- return "MORADO"
+ if br <= 20 and r > 150 and g < 75:
+ return "ROSADO FIUSHA"
+ elif br <= 20 and ir > 150:
+ return "LILA"
else:
return "MORADO"
+ elif rg <= 20:
+ return "GRIS" if bg <= 20 else "AZUL"
+ elif bg > 20:
+ return "ROJO" if r >= 100 and b < 60 or r >= 100 else "MARRON"
+ else:
+ return "GRIS"
- else: # ...Azul
- if rg <= 20:
- if bg <= 20:
- return "GRIS"
- else:
- return "AZUL"
- else: # r y g iguales
- if bg > 20:
- if r >= 100 and b < 60:
- return "ROJO"
- elif r >= 100:
- return "ROJO"
- else:
- return "MARRON"
- else:
- return "GRIS"
-
- # IGUALES---------------------------------------
else:
return "GRIS"
diff --git a/Compression_Analysis/PSNR.py b/Compression_Analysis/PSNR.py
index b3148c64c77..fc9b310d5ee 100644
--- a/Compression_Analysis/PSNR.py
+++ b/Compression_Analysis/PSNR.py
@@ -11,8 +11,7 @@ def Representational(r, g, b):
def calculate(img):
b, g, r = cv2.split(img)
- pixelAt = Representational(r, g, b)
- return pixelAt
+ return Representational(r, g, b)
def main():
@@ -34,7 +33,7 @@ def main():
# MSR = error_sum/(height*width)
PSNR = -(10 * math.log10(error / (255 * 255)))
- print("PSNR value is {}".format(PSNR))
+ print(f"PSNR value is {PSNR}")
if __name__ == "__main__":
diff --git a/Conversation.py b/Conversation.py
index 43f469ff56c..92189220bbb 100644
--- a/Conversation.py
+++ b/Conversation.py
@@ -5,7 +5,7 @@
# user puts in their name
name = getuser()
-name_check = input("Is your name " + name + "? → ")
+name_check = input(f"Is your name {name}? → ")
if name_check.lower().startswith("y"):
print("Okay.")
time.sleep(1)
@@ -16,10 +16,9 @@
# Python lists their name
userList = name
-# Python & user dialoge
-print("Hello", name + ", my name is Python.")
+print("Hello", userList + ", my name is Python.")
time.sleep(0.8)
-print("The first letter of your name is", userList[0] + ".")
+print("The first letter of your name is", f"{userList[0]}.")
time.sleep(0.8)
print("Nice to meet you. :)")
time.sleep(0.8)
diff --git a/CountMillionCharacter.py b/CountMillionCharacter.py
index c1aa7825a19..dc7c35de3ff 100644
--- a/CountMillionCharacter.py
+++ b/CountMillionCharacter.py
@@ -6,6 +6,7 @@
Credit to William J. Turkel and Adam Crymble for the word
frequency code used below. I just merged the two ideas.
"""
+
import re
pattern = re.compile("\W") # re is used to compile the expression more than once
@@ -308,7 +309,7 @@
wordlist.count(w) for w in wordlist
] # counts frequency of a letter in the given list
-print("String\n {} \n".format(wordstring))
-print("List\n {} \n".format(str(wordlist)))
-print("Frequencies\n {} \n".format(str(wordfreq)))
-print("Pairs\n {}".format(str(dict(zip(wordlist, wordfreq)))))
+print(f"String\n {wordstring} \n")
+print(f"List\n {wordlist} \n")
+print(f"Frequencies\n {wordfreq} \n")
+print(f"Pairs\n {dict(zip(wordlist, wordfreq))}")
diff --git a/Credit_Card_Validator.py b/Credit_Card_Validator.py
index 08100e781fd..00c8327288f 100644
--- a/Credit_Card_Validator.py
+++ b/Credit_Card_Validator.py
@@ -32,15 +32,14 @@ def company(self):
elif str(self.card_no).startswith("7"):
comp = "Gasoline Card"
- return "Company : " + comp
+ return f"Company : {comp}"
def first_check(self):
- if 13 <= len(self.card_no) <= 19:
- message = "First check : Valid in terms of length."
-
- else:
- message = "First check : Check Card number once again it must be of 13 or 16 digits long."
- return message
+ return (
+ "First check : Valid in terms of length."
+ if 13 <= len(self.card_no) <= 19
+ else "First check : Check Card number once again it must be of 13 or 16 digits long."
+ )
def validate(self):
# double every second digit from right to left
@@ -51,7 +50,7 @@ def validate(self):
double_it = int(crd_no[i]) * 2
if len(str(double_it)) == 2:
- sum_ += sum([eval(i) for i in str(double_it)])
+ sum_ += sum(eval(i) for i in str(double_it))
else:
sum_ += double_it
@@ -59,16 +58,11 @@ def validate(self):
else:
sum_ += int(crd_no[i])
- if sum_ % 10 == 0:
- response = "Valid Card"
- else:
- response = "Invalid Card"
-
- return response
+ return "Valid Card" if sum_ % 10 == 0 else "Invalid Card"
@property
def checksum(self):
- return "#CHECKSUM# : " + self.card_no[-1]
+ return f"#CHECKSUM# : {self.card_no[-1]}"
@classmethod
def set_card(cls, card_to_check):
diff --git a/Cricket_score.py b/Cricket_score.py
index 22b8f05e319..1ed6e37e3c7 100644
--- a/Cricket_score.py
+++ b/Cricket_score.py
@@ -14,13 +14,19 @@
sauce = request.urlopen(url).read()
soup = bs4.BeautifulSoup(sauce, "lxml")
-score = []
-results = []
-
-for div_tags in soup.find_all("div", attrs={"class": "cb-lv-scrs-col text-black"}):
- score.append(div_tags.text)
-for result in soup.find_all("div", attrs={"class": "cb-lv-scrs-col cb-text-complete"}):
- results.append(result.text)
+score = [
+ div_tags.text
+ for div_tags in soup.find_all(
+ "div", attrs={"class": "cb-lv-scrs-col text-black"}
+ )
+]
+
+results = [
+ result.text
+ for result in soup.find_all(
+ "div", attrs={"class": "cb-lv-scrs-col cb-text-complete"}
+ )
+]
engine = pyttsx3.init()
diff --git a/Day_of_week.py b/Day_of_week.py
index f0f9fd6f3b5..332739ea929 100644
--- a/Day_of_week.py
+++ b/Day_of_week.py
@@ -25,4 +25,4 @@ def find_day(date):
# To overcome those we have to process user input and make it standard to accept as defined by calender and time module
user_input = str(input("Enter date "))
date = process_date(user_input)
-print("Day on " + user_input + " is " + find_day(date))
+print(f"Day on {user_input} is {find_day(date)}")
diff --git a/Decimal_To_Binary.py b/Decimal_To_Binary.py
index a8e85097a14..842e8247eac 100644
--- a/Decimal_To_Binary.py
+++ b/Decimal_To_Binary.py
@@ -21,17 +21,13 @@ def dtbconverter(num):
while w_num != 0:
whole.append(w_num % 2)
- w_num = w_num // 2
+ w_num //= 2
whole.reverse()
- i = 0
- while i < len(whole):
- print(whole[i], end="")
- i += 1
- i = 0
- while i < len(fractional):
- print(fractional[i], end="")
- i += 1
+ for item_ in whole:
+ print(item_, end="")
+ for item in fractional:
+ print(item, end="")
number = float(input("Enter Any base-10 Number: "))
diff --git a/Delete_Linked_List.py b/Delete_Linked_List.py
index 263f69eb986..92f7f7cec7c 100644
--- a/Delete_Linked_List.py
+++ b/Delete_Linked_List.py
@@ -22,10 +22,9 @@ def Delete(self, key):
temp = self.head
if temp is None:
return "Can't Delete!"
- else:
- if temp.data == key:
- self.head = temp.next
- temp = None
+ if temp.data == key:
+ self.head = temp.next
+ temp = None
while temp is not None:
prev = temp
temp = temp.next
diff --git a/Detect_Remove_loop.py b/Detect_Remove_loop.py
index 6aad9f879b9..3e6c956ed70 100644
--- a/Detect_Remove_loop.py
+++ b/Detect_Remove_loop.py
@@ -33,7 +33,7 @@ def Remove_loop(self, Loop_node):
ptr1 = self.head
while 1:
ptr2 = Loop_node
- while ptr2.next != Loop_node and ptr2.next != ptr1:
+ while ptr2.next not in [ptr2, ptr1]:
ptr2 = ptr2.next
if ptr2.next == ptr1:
break
diff --git a/Eight_Puzzle_Solver/eight_puzzle.py b/Eight_Puzzle_Solver/eight_puzzle.py
index 703df00b3e6..336e9c4c909 100644
--- a/Eight_Puzzle_Solver/eight_puzzle.py
+++ b/Eight_Puzzle_Solver/eight_puzzle.py
@@ -25,10 +25,7 @@ def __init__(self, state, depth=0, moves=None, optimizer=0):
self.size = len(state)
self.depth = depth
self.optimizer = optimizer
- if moves is None:
- self.moves = list()
- else:
- self.moves = moves
+ self.moves = [] if moves is None else moves
def getAvailableActions(self):
"""
@@ -37,7 +34,7 @@ def getAvailableActions(self):
0 - Left 1 - Right 2 - Top 3 - Bottom
Restrictions: state is self.size x self.size Array
"""
- action = list()
+ action = []
for i in range(self.size):
for j in range(self.size):
if self.state[i][j] == 0:
@@ -121,7 +118,7 @@ def isGoalState(self):
"""
for i in range(self.size):
for j in range(self.size):
- if i == j and j == self.size - 1:
+ if i == j == self.size - 1:
continue
if self.state[i][j] != (i) * self.size + (j + 1):
return False
@@ -149,7 +146,7 @@ def getHammingDistance(self):
ans = 0
for i in range(self.size):
for j in range(self.size):
- if self.state[i][j] != 0 and self.state[i][j] != i * 3 + (j + 1):
+ if self.state[i][j] not in [0, i * 3 + (j + 1)]:
ans = ans + 1
return ans
@@ -160,107 +157,67 @@ def __hash__(self):
def __gt__(self, other):
if self.optimizer == 0:
- if self.getManhattanDistance() > other.getManhattanDistance():
- return True
- else:
- return False
+ return self.getManhattanDistance() > other.getManhattanDistance()
elif self.optimizer == 1:
- if self.getHammingDistance() > other.getHammingDistance():
- return True
- else:
- return False
+ return self.getHammingDistance() > other.getHammingDistance()
elif self.optimizer == 2:
- if (
+ return (
self.getHammingDistance() + self.getManhattanDistance()
> other.getHammingDistance() + self.getManhattanDistance()
- ):
- return True
- else:
- return False
+ )
+
return True
def __ge__(self, other):
if self.optimizer == 0:
- if self.getManhattanDistance() >= other.getManhattanDistance():
- return True
- else:
- return False
+ return self.getManhattanDistance() >= other.getManhattanDistance()
elif self.optimizer == 1:
- if self.getHammingDistance() >= other.getHammingDistance():
- return True
- else:
- return False
+ return self.getHammingDistance() >= other.getHammingDistance()
elif self.optimizer == 2:
- if (
+ return (
self.getHammingDistance() + self.getManhattanDistance()
>= other.getHammingDistance() + self.getManhattanDistance()
- ):
- return True
- else:
- return False
+ )
+
return True
def __lt__(self, other):
if self.optimizer == 0:
- if self.getManhattanDistance() < other.getManhattanDistance():
- return True
- else:
- return False
+ return self.getManhattanDistance() < other.getManhattanDistance()
elif self.optimizer == 1:
- if self.getHammingDistance() < other.getHammingDistance():
- return True
- else:
- return False
+ return self.getHammingDistance() < other.getHammingDistance()
elif self.optimizer == 2:
- if (
+ return (
self.getHammingDistance() + self.getManhattanDistance()
< other.getHammingDistance() + self.getManhattanDistance()
- ):
- return True
- else:
- return False
+ )
+
return True
def __le__(self, other):
if self.optimizer == 0:
- if self.getManhattanDistance() <= other.getManhattanDistance():
- return True
- else:
- return False
+ return self.getManhattanDistance() <= other.getManhattanDistance()
elif self.optimizer == 1:
- if self.getHammingDistance() <= other.getHammingDistance():
- return True
- else:
- return False
+ return self.getHammingDistance() <= other.getHammingDistance()
elif self.optimizer == 2:
- if (
+ return (
self.getHammingDistance() + self.getManhattanDistance()
<= other.getHammingDistance() + self.getManhattanDistance()
- ):
- return True
- else:
- return False
+ )
+
return True
def __eq__(self, other):
if self.optimizer == 0:
- if self.getManhattanDistance() == other.getManhattanDistance():
- return True
- else:
- return False
+ return self.getManhattanDistance() == other.getManhattanDistance()
elif self.optimizer == 1:
- if self.getHammingDistance() == other.getHammingDistance():
- return True
- else:
- return False
+ return self.getHammingDistance() == other.getHammingDistance()
elif self.optimizer == 2:
- if (
+ return (
self.getHammingDistance() + self.getManhattanDistance()
== other.getHammingDistance() + self.getManhattanDistance()
- ):
- return True
- else:
- return False
+ )
+
return True
@@ -293,7 +250,7 @@ def breadth_first_search(self):
if self.isSolvable() == False:
return (None, None)
- closed = list()
+ closed = []
q = deque()
q.append(Node(state=self.state, depth=0))
while q:
@@ -315,17 +272,18 @@ def depth_first_search(self):
"""
if self.isSolvable() == False:
return (None, None)
- closed = list()
- q = list()
- q.append(Node(state=self.state, depth=0))
+ closed = []
+ q = [Node(state=self.state, depth=0)]
while q:
node = q.pop()
if node.isGoalState():
return (node.moves, len(closed))
if node.state not in closed:
closed.append(node.state)
- for action in node.getAvailableActions():
- q.append(node.getResultFromAction(action))
+ q.extend(
+ node.getResultFromAction(action)
+ for action in node.getAvailableActions()
+ )
return (None, None)
@@ -336,7 +294,7 @@ def uniform_cost_search(self, optimizer=0):
"""
if self.isSolvable() == False:
return (None, None)
- closed = list()
+ closed = []
q = PriorityQueue()
q.put(Node(state=self.state, depth=0, optimizer=optimizer))
while q:
@@ -357,7 +315,7 @@ def a_star(self):
"""
if self.isSolvable() == False:
return (None, None)
- closed = dict()
+ closed = {}
q = PriorityQueue()
node = Node(state=self.state, depth=0)
q.put((node.getManhattanDistance(), node))
diff --git a/Emoji Dictionary/emoji_dictionary.py b/Emoji Dictionary/emoji_dictionary.py
index 04949946c9c..61c5131bdfc 100644
--- a/Emoji Dictionary/emoji_dictionary.py
+++ b/Emoji Dictionary/emoji_dictionary.py
@@ -187,14 +187,14 @@ def backspace(self):
def space(self):
if self.target:
text = self.get()
- text = text + " "
+ text = f"{text} "
self.clear()
self.append(text)
def tab(self): # 5 spaces
if self.target:
text = self.get()
- text = text + " "
+ text = f"{text} "
self.clear()
self.append(text)
@@ -202,7 +202,7 @@ def copy(self):
# TODO: copy to clipboad
if self.target:
self.memory = self.get()
- self.label["text"] = "memory: " + self.memory
+ self.label["text"] = f"memory: {self.memory}"
print(self.memory)
def paste(self):
@@ -234,7 +234,7 @@ def search_emoji():
outputtxt.insert(END, "You have entered no emoji.")
else:
means = emoji.demojize(word)
- outputtxt.insert(END, "Meaning of Emoji : " + str(word) + "\n\n" + means)
+ outputtxt.insert(END, f"Meaning of Emoji : {str(word)}" + "\n\n" + means)
# main window created
diff --git a/EncryptionTool.py b/EncryptionTool.py
index f6600752fa6..cb6245f3d4d 100644
--- a/EncryptionTool.py
+++ b/EncryptionTool.py
@@ -46,49 +46,45 @@ def decrypt(enc_text):
def readAndDecrypt(filename):
- file = open(filename, "r")
- data = file.read()
- datalistint = []
- actualdata = []
- datalist = data.split(" ")
- datalist.remove("")
- datalistint = [float(data) for data in datalist]
- for data in datalist:
- current1 = int(decryptChar(data))
- current1 = chr(current1)
- actualdata.append(current1)
- file.close()
+ with open(filename, "r") as file:
+ data = file.read()
+ datalistint = []
+ actualdata = []
+ datalist = data.split(" ")
+ datalist.remove("")
+ datalistint = [float(data) for data in datalist]
+ for data in datalist:
+ current1 = int(decryptChar(data))
+ current1 = chr(current1)
+ actualdata.append(current1)
return actualdata
def readAndEncrypt(filename):
- file = open(filename, "r")
- data = file.read()
- datalist = list(data)
- encrypted_list = list()
- encrypted_list_str = list()
- for data in datalist:
- current = ord(data)
- current = encryptChar(current)
- encrypted_list.append(current)
- file.close()
+ with open(filename, "r") as file:
+ data = file.read()
+ datalist = list(data)
+ encrypted_list = []
+ encrypted_list_str = []
+ for data in datalist:
+ current = ord(data)
+ current = encryptChar(current)
+ encrypted_list.append(current)
return encrypted_list
def readAndEncryptAndSave(inp_file, out_file):
enc_list = readAndEncrypt(inp_file)
- output = open(out_file, "w")
- for enc in enc_list:
- output.write(str(enc) + " ")
- output.close()
+ with open(out_file, "w") as output:
+ for enc in enc_list:
+ output.write(f"{str(enc)} ")
def readAndDecryptAndSave(inp_file, out_file):
dec_list = readAndDecrypt(inp_file)
- output = open(out_file, "w")
- for dec in dec_list:
- output.write(str(dec))
- output.close()
+ with open(out_file, "w") as output:
+ for dec in dec_list:
+ output.write(str(dec))
# encryption
@@ -104,11 +100,8 @@ def readAndDecryptAndSave(inp_file, out_file):
reverse.append(current)
print(reverse)
-# saves encrypted in txt file
-output = open("encrypted.txt", "w")
-for v in values:
- output.write(str(v) + " ")
-output.close()
-
+with open("encrypted.txt", "w") as output:
+ for v in values:
+ output.write(f"{str(v)} ")
# read and decrypts
print(readAndDecrypt("encrypted.txt"))
diff --git a/Face_Mask_detection (haarcascade)/mask_detection.py b/Face_Mask_detection (haarcascade)/mask_detection.py
index 9ba4c34734b..c44aa84a397 100644
--- a/Face_Mask_detection (haarcascade)/mask_detection.py
+++ b/Face_Mask_detection (haarcascade)/mask_detection.py
@@ -29,11 +29,7 @@
data[0] = normalized_image_array
prediction = model.predict(data)
print(prediction)
- if prediction[0][0] > prediction[0][1]:
- str = "Mask"
- else:
- str = "Without-mask"
-
+ str = "Mask" if prediction[0][0] > prediction[0][1] else "Without-mask"
cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2)
cv2.putText(img, str, (x, y), cv2.FONT_HERSHEY_COMPLEX, 1, (0, 150, 0), 1)
cv2.imshow("Result", img)
diff --git a/Factorial.py b/Factorial.py
index 572e928985a..8ac962000a1 100644
--- a/Factorial.py
+++ b/Factorial.py
@@ -2,11 +2,7 @@
def factorial(num: int):
- if num >= 1:
- return num * factorial(num - 1)
-
- else:
- return 1
+ return num * factorial(num - 1) if num >= 1 else 1
try:
diff --git a/Fibonacci_sequence_recursive_sol.py b/Fibonacci_sequence_recursive_sol.py
index 01a508518dc..00f2510022e 100644
--- a/Fibonacci_sequence_recursive_sol.py
+++ b/Fibonacci_sequence_recursive_sol.py
@@ -1,8 +1,5 @@
def fib(term):
- if term <= 1:
- return term
- else:
- return fib(term - 1) + fib(term - 2)
+ return term if term <= 1 else fib(term - 1) + fib(term - 2)
# Change this value to adjust the number of terms in the sequence.
diff --git a/Flappy Bird - created with tkinter/Background.py b/Flappy Bird - created with tkinter/Background.py
index 78dc415a9f4..d84fb75d9b1 100644
--- a/Flappy Bird - created with tkinter/Background.py
+++ b/Flappy Bird - created with tkinter/Background.py
@@ -150,29 +150,29 @@ def run(self):
"""
# Enquanto o atributo "stop" for False, a animação continuará em um loop infinito
- if not self.__stop:
-
- # Move as imagens de background na posição X
- self.move(self.__background[0], -10, 0)
- self.move(self.__background[1], -10, 0)
- self.tag_lower(self.__background[0])
- self.tag_lower(self.__background[1])
- self.tag_lower(self.__background_default)
-
- # Se a primeira imagem da lista tiver saído da área do widget, uma nova será criada depois da segunda imagem
- if self.bbox(self.__background[0])[2] <= 0:
- # Deleta a primeira imagem da lista (imagem que saiu da área do widget)
- self.delete(self.__background[0])
- self.__background.remove(self.__background[0])
-
- # Cria uma nova imagem a partir da última imagem da animação
- width = self.bbox(self.__background[0])[2] + self.__width // 2
- self.__background.append(
- self.create_image(width, self.__height // 2, image=self.__bg_image)
- )
-
- # Executa novamente o método depois de um certo tempo
- self.after(self.animation_speed, self.run)
+ if self.__stop:
+ return
+ # Move as imagens de background na posição X
+ self.move(self.__background[0], -10, 0)
+ self.move(self.__background[1], -10, 0)
+ self.tag_lower(self.__background[0])
+ self.tag_lower(self.__background[1])
+ self.tag_lower(self.__background_default)
+
+ # Se a primeira imagem da lista tiver saído da área do widget, uma nova será criada depois da segunda imagem
+ if self.bbox(self.__background[0])[2] <= 0:
+ # Deleta a primeira imagem da lista (imagem que saiu da área do widget)
+ self.delete(self.__background[0])
+ self.__background.remove(self.__background[0])
+
+ # Cria uma nova imagem a partir da última imagem da animação
+ width = self.bbox(self.__background[0])[2] + self.__width // 2
+ self.__background.append(
+ self.create_image(width, self.__height // 2, image=self.__bg_image)
+ )
+
+ # Executa novamente o método depois de um certo tempo
+ self.after(self.animation_speed, self.run)
def stop(self):
"""
diff --git a/Flappy Bird - created with tkinter/Bird.py b/Flappy Bird - created with tkinter/Bird.py
index 56fdcd1d31c..893a77d392c 100644
--- a/Flappy Bird - created with tkinter/Bird.py
+++ b/Flappy Bird - created with tkinter/Bird.py
@@ -125,7 +125,7 @@ def checkCollision(self):
continue
# Se houver alguma colisão o pássaro morre
- if len(possible_collisions) >= 1:
+ if possible_collisions:
self.__isAlive = False
return not self.__isAlive
diff --git a/Flappy Bird - created with tkinter/Flappy Bird.py b/Flappy Bird - created with tkinter/Flappy Bird.py
index 308a7c6ea70..a8a48dc2ec0 100644
--- a/Flappy Bird - created with tkinter/Flappy Bird.py
+++ b/Flappy Bird - created with tkinter/Flappy Bird.py
@@ -43,7 +43,7 @@ def __init__(self):
# Configura a janela do programa
self.title(self.window_name)
- self.geometry("{}x{}".format(self.__width, self.__height))
+ self.geometry(f"{self.__width}x{self.__height}")
self.resizable(*self.window_rz)
self.attributes("-fullscreen", self.window_fullscreen)
self["bg"] = "black"
@@ -51,9 +51,7 @@ def __init__(self):
# Verifica se existem as imagens do jogo
for file in self.images_fp:
if not os.path.exists(file):
- raise FileNotFoundError(
- "The following file was not found:\n{}".format(file)
- )
+ raise FileNotFoundError(f"The following file was not found:\n{file}")
# Carrega a imagem do botão para começar o jogo
self.__startButton_image = Background.getPhotoImage(
@@ -196,32 +194,32 @@ def createScoreBoard(self):
# Define a fonte dos textos
font = (self.text_font, int(0.02196 * self.__width + 0.5))
- # Cria a imagem do placar no background
- self.__background.create_image(x, y, image=self.__scoreboard_image)
-
+ self.__background.create_image(time_x, y, image=self.__scoreboard_image)
# Cria texto para mostrar o score do último jogo
self.__background.create_text(
score_x,
score_y,
- text="Score: %s" % self.__score,
+ text=f"Score: {self.__score}",
fill=self.text_fill,
font=font,
)
+
# Cria texto para mostrar a melhor pontuação do jogador
self.__background.create_text(
bestScore_x,
bestScore_y,
- text="Best Score: %s" % self.__bestScore,
+ text=f"Best Score: {self.__bestScore}",
fill=self.text_fill,
font=font,
)
+
# Cria texto para mostrar o tempo de jogo
self.__background.create_text(
time_x,
time_y,
- text="Time: %s" % self.__time,
+ text=f"Time: {self.__time}",
fill=self.text_fill,
font=font,
)
@@ -341,15 +339,11 @@ def loadScore(self):
# Tenta carregar o placar do usuário
try:
- file = open(self.score_fp)
- self.__bestScore = int(file.read(), 2)
- file.close()
-
- # Se não for possível, será criado um arquivo para guardar o placar
+ with open(self.score_fp) as file:
+ self.__bestScore = int(file.read(), 2)
except BaseException:
- file = open(self.score_fp, "w")
- file.write(bin(self.__bestScore))
- file.close()
+ with open(self.score_fp, "w") as file:
+ file.write(bin(self.__bestScore))
def saveScore(self):
"""
diff --git a/Flappy Bird - created with tkinter/Settings.py b/Flappy Bird - created with tkinter/Settings.py
index 33eb2c1da6f..6b545d48019 100644
--- a/Flappy Bird - created with tkinter/Settings.py
+++ b/Flappy Bird - created with tkinter/Settings.py
@@ -81,10 +81,8 @@ def setOptions(self):
# Tenta abrir o arquivo parar leitura
try:
- file = open(self.settings_fp, "r")
- data = loads(file.read())
- file.close()
-
+ with open(self.settings_fp, "r") as file:
+ data = loads(file.read())
# Define os atributos com os valores obtidos do arquivo desde que sejam
# referentes à eventos ou estejam na lista de atributos permitidos.
@@ -92,24 +90,19 @@ def setOptions(self):
if "event" in attr or attr in attributes:
setattr(Settings, attr, data[attr])
- # Caso não exista um arquivo para obter as configurações, ele será criado
except BaseException:
# Caso não exista o diretório, o mesmo será criado.
if not os.path.exists(os.path.split(self.settings_fp)[0]):
os.mkdir(os.path.split(self.settings_fp)[0])
- file = open(self.settings_fp, "w")
-
- data = dict()
+ with open(self.settings_fp, "w") as file:
+ data = {
+ attr: Settings.__dict__[attr]
+ for attr in Settings.__dict__
+ if "event" in attr or attr in attributes
+ }
- # Armazena no arquivo atributos com seus valores padrões desde que sejam
- # referentes à eventos ou estejam na lista de atributos permitidos.
-
- for attr in Settings.__dict__:
- if "event" in attr or attr in attributes:
- data[attr] = Settings.__dict__[attr]
- # Coloca as informações no arquivo e o fecha
- file.write(dumps(data, indent=2))
- file.close()
+ # Coloca as informações no arquivo e o fecha
+ file.write(dumps(data, indent=2))
diff --git a/Flappy Bird - created with tkinter/Tubes.py b/Flappy Bird - created with tkinter/Tubes.py
index a6021f69ef5..80875b424de 100644
--- a/Flappy Bird - created with tkinter/Tubes.py
+++ b/Flappy Bird - created with tkinter/Tubes.py
@@ -31,7 +31,7 @@ def __init__(
raise TypeError(
"The background argument must be an instance of Background."
)
- if not len(fp) == 2:
+ if len(fp) != 2:
raise TypeError(
"The parameter fp should be a sequence containing the path of the images of the tube body and the tube mouth."
)
@@ -99,9 +99,6 @@ def createNewTubes(self):
Método para criar 2 novos tubos (baixo e cima) numa mesma posição X
"""
- # Cria uma lista para armazenar as partes do corpo do tubo de cima
- tube1 = []
-
# Define a posição X que o tubo de cima aparecerá inicialmente no background
width = self.__width + (self.__imageWidth)
@@ -113,12 +110,11 @@ def createNewTubes(self):
self.__height - (self.__bird_h * 2) - self.__imageHeight,
)
- # Cria e adiciona à lista do corpo do tubo de cima, a boca do tubo
- tube1.append(
+ tube1 = [
self.__background.create_image(
width, height, image=self.__background.tubeImages[1]
)
- )
+ ]
# Cria uma nova imagem na lista de imagens com a altura sendo igual a posição Y do tubo de cima
self.__background.tubeImages[0].append(
@@ -141,21 +137,14 @@ def createNewTubes(self):
)
)
- ###############################################################################################################
- ###############################################################################################################
-
- # Cria uma lista para armazenar as partes do corpo do tubo de baixo
- tube2 = []
-
# A posição Y do tubo de baixo é calculada com base na posição do tubo de cima, mais o tamanho do pássaro
height = height + (self.__bird_h * 2) + self.__imageHeight - 1
- # Cria e adiciona à lista do corpo do tubo de baixo, a boca do tubo
- tube2.append(
+ tube2 = [
self.__background.create_image(
width, height, image=self.__background.tubeImages[1]
)
- )
+ ]
# Define a altura da imagem do corpo do tubo de baixo
height = self.__height - height
@@ -267,15 +256,17 @@ def move(self):
# Se a posição "x2" do tubo for menor que a posição "x1" do pássaro e se ainda não tiver sido
# pontuado este mesmo cano, o método para pontuar será chamado.
- if (self.__width / 2) - (self.__bird_w / 2) - self.__move < x2:
- if x2 <= (self.__width / 2) - (self.__bird_w / 2):
-
- # Verifica se o tubo está na lista de tubos passados
- if not tube[0] in self.__pastTubes:
- # Chama o método para pontuar e adiciona o tubo pontuado à lista de tubos passados
- self.__score_method()
- self.__pastTubes.append(tube[0])
- scored = True
+ if (self.__width / 2) - (
+ self.__bird_w / 2
+ ) - self.__move < x2 <= (self.__width / 2) - (
+ self.__bird_w / 2
+ ) and tube[
+ 0
+ ] not in self.__pastTubes:
+ # Chama o método para pontuar e adiciona o tubo pontuado à lista de tubos passados
+ self.__score_method()
+ self.__pastTubes.append(tube[0])
+ scored = True
# Move cada parte do copo do tubo no background
for body in tube:
diff --git a/Google_Image_Downloader/image_grapper.py b/Google_Image_Downloader/image_grapper.py
index a922894a8d0..cf2de5ae83f 100644
--- a/Google_Image_Downloader/image_grapper.py
+++ b/Google_Image_Downloader/image_grapper.py
@@ -63,7 +63,7 @@ def search_for_image():
counter = 0
for re in images:
rs = requests.get(re)
- with open("img" + str(counter) + ".jpg", "wb") as file:
+ with open(f"img{str(counter)}.jpg", "wb") as file:
file.write(rs.content)
# urlretrieve(re, 'img' + str(count) + '.jpg')
@@ -73,9 +73,6 @@ def search_for_image():
def download_wallpapers_1080p():
- cont = set() # Stores the links of images
- temp = set() # Refines the links to download images
-
print("Enter data to download wallpapers: ")
data = input()
search_query = {"q": data}
@@ -85,29 +82,24 @@ def download_wallpapers_1080p():
request = Request(g, headers=usr_agent)
r = urlopen(request).read()
sew = BeautifulSoup(r, "html.parser")
- count = 0
- for links in sew.find_all("a"):
- if "wallpaperscraft.com/download" in links.get("href"):
- cont.add(links.get("href"))
- for re in cont:
- # print all valid links
- # print('https://wallpaperscraft.com/image/' + re[31:-10] + '_' + re[-9:] + '.jpg')
-
- temp.add(
- "https://wallpaperscraft.com/image/" + re[31:-10] + "_" + re[-9:] + ".jpg"
- )
+ cont = {
+ links.get("href")
+ for links in sew.find_all("a")
+ if "wallpaperscraft.com/download" in links.get("href")
+ }
+
+ temp = {
+ f"https://wallpaperscraft.com/image/{re[31:-10]}_{re[-9:]}.jpg"
+ for re in cont
+ }
# Goes to Each link and downloads high resolution images
- for re in temp:
+ for count, re in enumerate(temp):
rs = requests.get(re)
- with open("img" + str(count) + ".jpg", "wb") as file:
+ with open(f"img{str(count)}.jpg", "wb") as file:
file.write(rs.content)
- # urlretrieve(re, 'img' + str(count) + '.jpg')
-
- count += 1
-
return True
diff --git a/Gregorian_Calendar.py b/Gregorian_Calendar.py
index 64c7d2a1a27..b2149e284f7 100644
--- a/Gregorian_Calendar.py
+++ b/Gregorian_Calendar.py
@@ -9,14 +9,10 @@
def is_leap(year):
- leap = False
if year % 4 == 0:
- leap = True
- if year % 100 == 0:
- leap = False
- if year % 400 == 0:
- leap = True
- return leap
+ return year % 400 == 0 if year % 100 == 0 else True
+ else:
+ return False
year = int(input("Enter the year here: "))
diff --git a/GroupSms_Way2.py b/GroupSms_Way2.py
index 04f9f562249..369f4cd9475 100644
--- a/GroupSms_Way2.py
+++ b/GroupSms_Way2.py
@@ -46,9 +46,10 @@
send_sms_url = "http://site24.way2sms.com/smstoss.action?"
opener.addheaders = [
- ("Referer", "http://site25.way2sms.com/sendSMS?Token=%s" % jession_id)
+ ("Referer", f"http://site25.way2sms.com/sendSMS?Token={jession_id}")
]
+
try:
for number in num:
send_sms_data = (
diff --git a/Guessing_Game.py b/Guessing_Game.py
index aaeb895384b..8448d9b5ddd 100644
--- a/Guessing_Game.py
+++ b/Guessing_Game.py
@@ -24,7 +24,7 @@ def guessing_game(GUESS_RANGE, GUESS_LIMIT):
ATTEMPTS_TOOK = ATTEMPTS_ALLOWED - GUESS_LIMIT
print(f"You nailed it! And it only took you {ATTEMPTS_TOOK} attempts.")
done = True
- if GUESS_LIMIT > 0 and not done:
+ if not done:
print(f"You still have {GUESS_LIMIT} chances left.\n")
GUESS = int(input("Try a new guess: "))
# Another input validation loop.
diff --git a/Hand-Motion-Detection/hand_motion_recognizer.py b/Hand-Motion-Detection/hand_motion_recognizer.py
index 9e9db13ce9e..a8615d037f1 100644
--- a/Hand-Motion-Detection/hand_motion_recognizer.py
+++ b/Hand-Motion-Detection/hand_motion_recognizer.py
@@ -12,37 +12,37 @@
with mp_hands.Hands(min_detection_confidence=0.8, min_tracking_confidence=0.5) as hands:
while cap.isOpened():
ret, frame = cap.read()
-
+
# BGR 2 RGB
image = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
-
+
# Flip on horizontal
image = cv2.flip(image, 1)
-
+
# Set flag
image.flags.writeable = False
-
+
# Detections
results = hands.process(image)
-
+
# Set flag to true
image.flags.writeable = True
-
+
# RGB 2 BGR
image = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)
-
+
# Detections
print(results)
-
+
# Rendering results
if results.multi_hand_landmarks:
- for num, hand in enumerate(results.multi_hand_landmarks):
+ for hand in results.multi_hand_landmarks:
mp_drawing.draw_landmarks(image, hand, mp_hands.HAND_CONNECTIONS,
mp_drawing.DrawingSpec(color=(121, 22, 76), thickness=2, circle_radius=4),
mp_drawing.DrawingSpec(color=(250, 44, 250), thickness=2, circle_radius=2),
)
-
-
+
+
cv2.imshow('Hand Tracking', image)
if cv2.waitKey(10) & 0xFF == ord('q'):
diff --git a/Hotel-Management.py b/Hotel-Management.py
index b8e4cfcbfeb..0961b79c561 100644
--- a/Hotel-Management.py
+++ b/Hotel-Management.py
@@ -85,12 +85,10 @@ def add():
print("Online payment")
print("")
- File = open("Management.txt", "r")
- string = File.read()
- string = string.replace("'", '"')
- dictionary = json.loads(string)
- File.close()
-
+ with open("Management.txt", "r") as File:
+ string = File.read()
+ string = string.replace("'", '"')
+ dictionary = json.loads(string)
if len(dictionary.get("Room")) == 0:
Room_num = "501"
else:
@@ -114,10 +112,8 @@ def add():
dictionary["Price"].append(Money)
dictionary["Room"].append(Room_num)
- File = open("Management.txt", "w", encoding="utf-8")
- File.write(str(dictionary))
- File.close()
-
+ with open("Management.txt", "w", encoding="utf-8") as File:
+ File.write(str(dictionary))
print("")
print("Your data has been successfully added to our database.")
@@ -129,37 +125,33 @@ def add():
filecheck = os.path.isfile("Management.txt")
if filecheck == False:
- File = open("Management.txt", "a", encoding="utf-8")
- temp1 = {
- "First_Name": [],
- "Last_Name": [],
- "Phone_num": [],
- "Room_Type": [],
- "Days": [],
- "Price": [],
- "Room": [],
- }
- File.write(str(temp1))
- File.close()
+ with open("Management.txt", "a", encoding="utf-8") as File:
+ temp1 = {
+ "First_Name": [],
+ "Last_Name": [],
+ "Phone_num": [],
+ "Room_Type": [],
+ "Days": [],
+ "Price": [],
+ "Room": [],
+ }
+ File.write(str(temp1))
def modify():
- File = open("Management.txt", "r")
- string = File.read()
- string = string.replace("'", '"')
- dictionary = json.loads(string)
- File.close()
-
+ with open("Management.txt", "r") as File:
+ string = File.read()
+ string = string.replace("'", '"')
+ dictionary = json.loads(string)
dict_num = dictionary.get("Room")
dict_len = len(dict_num)
+ print("")
if dict_len == 0:
- print("")
print("There is no data in our database")
print("")
menu()
else:
- print("")
Room = input("Enter your Room Number: ")
listt = dictionary["Room"]
@@ -211,21 +203,18 @@ def modify():
def search():
- File = open("Management.txt", "r")
- string = File.read()
- string = string.replace("'", '"')
- dictionary = json.loads(string)
- File.close()
-
+ with open("Management.txt", "r") as File:
+ string = File.read()
+ string = string.replace("'", '"')
+ dictionary = json.loads(string)
dict_num = dictionary.get("Room")
dict_len = len(dict_num)
+ print("")
if dict_len == 0:
- print("")
print("There is no data in our database")
print("")
menu()
else:
- print("")
Room = input("Enter your Room Number: ")
print("")
@@ -253,21 +242,18 @@ def search():
def remove():
- File = open("Management.txt", "r")
- string = File.read()
- string = string.replace("'", '"')
- dictionary = json.loads(string)
- File.close()
-
+ with open("Management.txt", "r") as File:
+ string = File.read()
+ string = string.replace("'", '"')
+ dictionary = json.loads(string)
dict_num = dictionary.get("Room")
dict_len = len(dict_num)
+ print("")
if dict_len == 0:
- print("")
print("There is no data in our database")
print("")
menu()
else:
- print("")
Room = input("Enter your Room Number: ")
print("")
@@ -311,10 +297,8 @@ def remove():
dictionary["Room"] = None
dictionary["Room"] = listt_num
- file1 = open("Management.txt", "w", encoding="utf-8")
- file1.write(str(dictionary))
- file1.close()
-
+ with open("Management.txt", "w", encoding="utf-8") as file1:
+ file1.write(str(dictionary))
print("Details has been removed successfully")
exit_menu()
@@ -322,12 +306,10 @@ def remove():
def view():
- File = open("Management.txt", "r")
- string = File.read()
- string = string.replace("'", '"')
- dictionary = json.loads(string)
- File.close()
-
+ with open("Management.txt", "r") as File:
+ string = File.read()
+ string = string.replace("'", '"')
+ dictionary = json.loads(string)
dict_num = dictionary.get("Room")
dict_len = len(dict_num)
if dict_len == 0:
@@ -360,7 +342,7 @@ def view():
print("Room Number:", listt_num[index])
print("")
- index = index + 1
+ index += 1
exit_menu()
diff --git a/ImageDownloader/img_downloader.py b/ImageDownloader/img_downloader.py
index 70fea5fced6..61319a32db3 100644
--- a/ImageDownloader/img_downloader.py
+++ b/ImageDownloader/img_downloader.py
@@ -11,7 +11,7 @@ def ImageDownloader(url):
img_addrs = re.findall(p, text)
for i in img_addrs:
- os.system("wget {}".format(i))
+ os.system(f"wget {i}")
return "DONE"
diff --git a/Infix_to_Postfix.py b/Infix_to_Postfix.py
index bdffa82e63c..695a9415929 100644
--- a/Infix_to_Postfix.py
+++ b/Infix_to_Postfix.py
@@ -15,7 +15,7 @@ def __init__(self, capacity):
# check if the stack is empty
def isEmpty(self):
- return True if self.top == -1 else False
+ return self.top == -1
# Return the value of the top of the stack
def peek(self):
@@ -23,11 +23,10 @@ def peek(self):
# Pop the element from the stack
def pop(self):
- if not self.isEmpty():
- self.top -= 1
- return self.array.pop()
- else:
+ if self.isEmpty():
return "$"
+ self.top -= 1
+ return self.array.pop()
# Push the element to the stack
def push(self, op):
@@ -45,7 +44,7 @@ def notGreater(self, i):
try:
a = self.precedence[i]
b = self.precedence[self.peek()]
- return True if a <= b else False
+ return a <= b
except KeyError:
return False
diff --git a/JARVIS/JARVIS.py b/JARVIS/JARVIS.py
index 5135086c978..e4db8193b16 100644
--- a/JARVIS/JARVIS.py
+++ b/JARVIS/JARVIS.py
@@ -126,7 +126,7 @@ def on_press(key):
k = key.name # other keys
if k in ["1", "2", "left", "right"]: # keys of interest
# self.keys.append(k) # store it in global-like variable
- print("Key pressed: " + k)
+ print(f"Key pressed: {k}")
return False # stop listener; remove this if want more keys
@@ -215,7 +215,6 @@ def get_app(Q):
subprocess.call(["discord.exe"])
elif Q == "open browser":
subprocess.call(["C:\\Program Files\\Internet Explorer\\iexplore.exe"])
- # patch-1
elif Q == "open youtube":
webbrowser.open("https://www.youtube.com/") # open youtube
elif Q == "open google":
@@ -239,15 +238,11 @@ def get_app(Q):
except Exception as e:
print(e)
speak("Sorry, I can't send the email.")
- # =======
- # master
elif Q == "Take screenshot":
snapshot = ImageGrab.grab()
drive_letter = "C:\\"
- folder_name = r"downloaded-files"
folder_time = datetime.datetime.now().strftime("%Y-%m-%d_%I-%M-%S_%p")
- extention = ".jpg"
- folder_to_save_files = drive_letter + folder_name + folder_time + extention
+ folder_to_save_files = f"{drive_letter}downloaded-files{folder_time}.jpg"
snapshot.save(folder_to_save_files)
elif Q == "Jokes":
diff --git a/Job_scheduling.py b/Job_scheduling.py
index 6ac96c24abd..70d3180baae 100644
--- a/Job_scheduling.py
+++ b/Job_scheduling.py
@@ -72,10 +72,7 @@ def feasible(self, profit_jobs: List[int], deadline: List[int]) -> bool:
while k < len(self.tmp):
self.job = self.tmp[k]
- if self.job in self.jobs:
- self.jobindex = self.jobs.index(self.job)
- else:
- self.jobindex = 0
+ self.jobindex = self.jobs.index(self.job) if self.job in self.jobs else 0
self.dlineval = deadline[self.jobindex]
self.ftest = k + 1
k += 1
@@ -98,9 +95,8 @@ def main():
]
# midresult stores jobs in sorting order of deadline
midresult = []
- for i in range(len(jobs)):
- current_job = []
- current_job.extend((jobs[i].deadline, jobs[i].profit, jobs[i].job_id))
+ for job_ in jobs:
+ current_job = [job_.deadline, job_.profit, job_.job_id]
midresult.append(current_job)
midresult.sort(key=lambda k: (k[0], -k[1]))
(deadline, profit, jobs) = map(list, zip(*midresult))
@@ -112,7 +108,7 @@ def main():
finalprofit = []
finaldl = []
- for i, item in enumerate(scheduled_jobs):
+ for item in scheduled_jobs:
jobsindex = jobs.index(item)
finalprofit.append(profit[jobsindex])
finaldl.append(deadline[jobsindex])
diff --git a/JustDialScrapperGUI/Justdial Scrapper GUI.py b/JustDialScrapperGUI/Justdial Scrapper GUI.py
index 2dd4803f0bb..277a4bfa944 100644
--- a/JustDialScrapperGUI/Justdial Scrapper GUI.py
+++ b/JustDialScrapperGUI/Justdial Scrapper GUI.py
@@ -82,9 +82,7 @@ def get_rating(body):
def get_rating_count(body):
text = body.find("span", {"class": "rt_count"}).string
- # Get only digits
- rating_count = "".join(i for i in text if i.isdigit())
- return rating_count
+ return "".join(i for i in text if i.isdigit())
@staticmethod
def get_address(body):
@@ -100,7 +98,7 @@ def get_location(body):
latitude = text_list[3].strip().replace("'", "")
longitude = text_list[4].strip().replace("'", "")
- return latitude + ", " + longitude
+ return f"{latitude}, {longitude}"
def start_scrapping_logic(self):
page_number = 1
@@ -109,84 +107,82 @@ def start_scrapping_logic(self):
total_url = "https://www.justdial.com/{0}/{1}".format(self.location, self.query)
fields = ["Name", "Phone", "Rating", "Rating Count", "Address", "Location"]
- out_file = open("{0}.csv".format(self.file_name), "w")
- csvwriter = csv.DictWriter(out_file, delimiter=",", fieldnames=fields)
- csvwriter.writerow(
- {
- "Name": "Name", # Shows the name
- "Phone": "Phone", # shows the phone
- "Rating": "Rating", # shows the ratings
- "Rating Count": "Rating Count", # Shows the stars for ex: 4 stars
- "Address": "Address", # Shows the address of the place
- "Location": "Location", # shows the location
- }
- )
+ with open("{0}.csv".format(self.file_name), "w") as out_file:
+ csvwriter = csv.DictWriter(out_file, delimiter=",", fieldnames=fields)
+ csvwriter.writerow(
+ {
+ "Name": "Name", # Shows the name
+ "Phone": "Phone", # shows the phone
+ "Rating": "Rating", # shows the ratings
+ "Rating Count": "Rating Count", # Shows the stars for ex: 4 stars
+ "Address": "Address", # Shows the address of the place
+ "Location": "Location", # shows the location
+ }
+ )
- progress_value = 0
- while True:
- # Check if reached end of result
- if page_number > 50:
- progress_value = 100
- self.progressbar["value"] = progress_value
- break
+ progress_value = 0
+ while True:
+ # Check if reached end of result
+ if page_number > 50:
+ progress_value = 100
+ self.progressbar["value"] = progress_value
+ break
+
+ if progress_value != 0:
+ progress_value += 1
+ self.label_progress["text"] = "{0}{1}".format(progress_value, "%")
+ self.progressbar["value"] = progress_value
+
+ url = f"{total_url}/page-{page_number}"
+ print("{0} {1}, {2}".format("Scrapping page number: ", page_number, url))
+ req = urllib.request.Request(
+ url, headers={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64)"}
+ )
+ page = urllib.request.urlopen(req)
+
+ soup = BeautifulSoup(page.read(), "html.parser")
+ services = soup.find_all("li", {"class": "cntanr"})
+
+ # Iterate through the 10 results in the page
- if progress_value != 0:
progress_value += 1
self.label_progress["text"] = "{0}{1}".format(progress_value, "%")
self.progressbar["value"] = progress_value
- url = total_url + "/page-%s" % page_number
- print("{0} {1}, {2}".format("Scrapping page number: ", page_number, url))
- req = urllib.request.Request(
- url, headers={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64)"}
- )
- page = urllib.request.urlopen(req)
-
- soup = BeautifulSoup(page.read(), "html.parser")
- services = soup.find_all("li", {"class": "cntanr"})
-
- # Iterate through the 10 results in the page
-
- progress_value += 1
- self.label_progress["text"] = "{0}{1}".format(progress_value, "%")
- self.progressbar["value"] = progress_value
-
- for service_html in services:
- try:
- # Parse HTML to fetch data
- dict_service = {}
- name = self.get_name(service_html)
- print(name)
- phone = self.get_phone_number(service_html)
- rating = self.get_rating(service_html)
- count = self.get_rating_count(service_html)
- address = self.get_address(service_html)
- location = self.get_location(service_html)
- if name is not None:
- dict_service["Name"] = name
- if phone is not None:
- print("getting phone number")
- dict_service["Phone"] = phone
- if rating is not None:
- dict_service["Rating"] = rating
- if count is not None:
- dict_service["Rating Count"] = count
- if address is not None:
- dict_service["Address"] = address
- if location is not None:
- dict_service["Address"] = location
-
- # Write row to CSV
- csvwriter.writerow(dict_service)
-
- print("#" + str(service_count) + " ", dict_service)
- service_count += 1
- except AttributeError:
- print("AttributeError Occurred 101")
-
- page_number += 1
-
- out_file.close()
+ for service_html in services:
+ try:
+ # Parse HTML to fetch data
+ dict_service = {}
+ name = self.get_name(service_html)
+ print(name)
+ phone = self.get_phone_number(service_html)
+ rating = self.get_rating(service_html)
+ count = self.get_rating_count(service_html)
+ address = self.get_address(service_html)
+ location = self.get_location(service_html)
+ if name is not None:
+ dict_service["Name"] = name
+ if phone is not None:
+ print("getting phone number")
+ dict_service["Phone"] = phone
+ if rating is not None:
+ dict_service["Rating"] = rating
+ if count is not None:
+ dict_service["Rating Count"] = count
+ if address is not None:
+ dict_service["Address"] = address
+ if location is not None:
+ dict_service["Address"] = location
+
+ # Write row to CSV
+ csvwriter.writerow(dict_service)
+
+ print(f"#{str(service_count)} ", dict_service)
+ service_count += 1
+ except AttributeError:
+ print("AttributeError Occurred 101")
+
+ page_number += 1
class JDScrapperGUI:
diff --git a/Koch Curve/koch curve.py b/Koch Curve/koch curve.py
index 77b31cc22f5..6b727c32b41 100644
--- a/Koch Curve/koch curve.py
+++ b/Koch Curve/koch curve.py
@@ -28,7 +28,7 @@ def snowflake(lengthSide, levels):
# Do not change the turtle’s heading.
t.backward(length / 2.0)
t.pendown()
- for i in range(3):
+ for _ in range(3):
# Pull the pen down – drawing when moving.
snowflake(length, 4)
t.right(120)
diff --git a/Letter_Counter.py b/Letter_Counter.py
index b900c72b4dc..e14168ad19f 100644
--- a/Letter_Counter.py
+++ b/Letter_Counter.py
@@ -15,7 +15,7 @@ def printt():
# Get the count and display results.
letter_count = message.count(letter)
- a = "your message has " + str(letter_count) + " " + letter + "'s in it."
+ a = f"your message has {str(letter_count)} {letter}" + "'s in it."
labl = tk.Label(root, text=a, font=("arial", 15), fg="black").place(x=10, y=220)
diff --git a/List.py b/List.py
index 34d29322069..40fc77e0c85 100644
--- a/List.py
+++ b/List.py
@@ -6,8 +6,7 @@
List.insert(0, 6)
print(List)
List.remove(6)
-List.append(9)
-List.append(1)
+List.extend((9, 1))
List.sort()
print(List)
List.pop()
diff --git a/Luhn_Algorithm.py b/Luhn_Algorithm.py
index 51eb03672aa..8a49e288397 100644
--- a/Luhn_Algorithm.py
+++ b/Luhn_Algorithm.py
@@ -18,6 +18,7 @@
David Costell (DontEatThemCookies on GitHub)
"""
+
# Input
CC = input("Enter number to validate (e.g. 7992739871): ")
if len(CC) < 10 or len(CC) > 10:
@@ -47,14 +48,15 @@
for i in tobedoubled:
if i > 9:
splitdigit = str(i)
- for index in range(0, len(splitdigit), 1):
- newdoubled.append(splitdigit[index : index + 1])
+ newdoubled.extend(
+ splitdigit[index : index + 1] for index in range(len(splitdigit))
+ )
+
tobedoubled.remove(i)
newdoubled = [int(i) for i in newdoubled]
# Unify all lists into one (luhnsum)
-luhnsum = []
-luhnsum.extend(tobedoubled)
+luhnsum = list(tobedoubled)
luhnsum.extend(newdoubled)
luhnsum.extend(remaining)
diff --git a/Memory_game.py b/Memory_game.py
index aca7f2fe81c..4a5ce49daff 100644
--- a/Memory_game.py
+++ b/Memory_game.py
@@ -23,7 +23,7 @@ def create(card):
random.shuffle(card1)
state = 0
exposed = []
- for i in range(0, 16, 1):
+ for i in range(16):
exposed.insert(i, False)
@@ -47,7 +47,7 @@ def mouseclick(pos):
def draw(canvas):
global card1
gap = 0
- for i in range(0, 16, 1):
+ for i in range(16):
if exposed[i] == False:
canvas.draw_polygon(
[[0 + gap, 0], [0 + gap, 100], [50 + gap, 100], [50 + gap, 0]],
diff --git a/MobiusFunction.py b/MobiusFunction.py
index ba1d3561658..64b2bb88a7d 100644
--- a/MobiusFunction.py
+++ b/MobiusFunction.py
@@ -3,10 +3,7 @@ def is_square_free(factors):
This functions takes a list of prime factors as input.
returns True if the factors are square free.
"""
- for i in factors:
- if factors.count(i) > 1:
- return False
- return True
+ return all(factors.count(i) <= 1 for i in factors)
def prime_factors(n):
@@ -15,7 +12,7 @@ def prime_factors(n):
"""
i = 2
factors = []
- while i * i <= n:
+ while i**2 <= n:
if n % i:
i += 1
else:
@@ -32,9 +29,6 @@ def mobius_function(n):
"""
factors = prime_factors(n)
if is_square_free(factors):
- if len(factors) % 2 == 0:
- return 1
- elif len(factors) % 2 != 0:
- return -1
+ return 1 if len(factors) % 2 == 0 else -1
else:
return 0
diff --git a/Number reverse.py b/Number reverse.py
index 1f84f917744..130d0656bc8 100644
--- a/Number reverse.py
+++ b/Number reverse.py
@@ -1,7 +1,7 @@
n=int(input("Enter number: "))
rev=0
-while(n>0):
+while (n>0):
dig=n%10
rev=rev*10+dig
- n=n//10
+ n //= 10
print("Reverse of the number:",rev)
diff --git a/Organise.py b/Organise.py
index 4133e4138fc..e7e3e05155a 100644
--- a/Organise.py
+++ b/Organise.py
@@ -64,15 +64,15 @@ def ChangeDirectory(dir):
def Organize(dirs, name):
try:
os.mkdir(name)
- print("{} Folder Created".format(name))
+ print(f"{name} Folder Created")
except WindowsError:
- print("{} Folder Exist".format(name))
+ print(f"{name} Folder Exist")
- src = "{}\\{}".format(destLocation, dirs)
- dest = "{}\{}".format(destLocation, name)
+ src = f"{destLocation}\\{dirs}"
+ dest = f"{destLocation}\{name}"
os.chdir(dest)
- shutil.move(src, "{}\\{}".format(dest, dirs))
+ shutil.move(src, f"{dest}\\{dirs}")
print(os.getcwd())
os.chdir(destLocation)
@@ -88,23 +88,18 @@ def Organize(dirs, name):
"Compressed",
]
for dirs in os.listdir(os.getcwd()):
- if 1:
- for name, extensions_list in zip(
- TYPES_LIST,
- [
- EXT_VIDEO_LIST,
- EXT_IMAGE_LIST,
- EXT_DOCUMENT_LIST,
- EXT_MUSIC_LIST,
- EXT_CODE_LIST,
- EXT_EXECUTABLE_LIST,
- EXT_COMPRESSED_LIST,
- ],
- ):
- if dirs.split(".")[-1].upper() in extensions_list:
- Organize(dirs, name)
- else:
- if dirs not in TYPES_LIST:
- Organize(dirs, "Folders")
-
+ for name, extensions_list in zip(
+ TYPES_LIST,
+ [
+ EXT_VIDEO_LIST,
+ EXT_IMAGE_LIST,
+ EXT_DOCUMENT_LIST,
+ EXT_MUSIC_LIST,
+ EXT_CODE_LIST,
+ EXT_EXECUTABLE_LIST,
+ EXT_COMPRESSED_LIST,
+ ],
+ ):
+ if dirs.split(".")[-1].upper() in extensions_list:
+ Organize(dirs, name)
print("Done Arranging Files and Folder in your specified directory")
diff --git a/PDF/header_footer.py b/PDF/header_footer.py
index f7b50037796..2afb4f12aa3 100644
--- a/PDF/header_footer.py
+++ b/PDF/header_footer.py
@@ -18,8 +18,7 @@ def footer(self):
# Arial italic 8
self.set_font("Arial", "I", 8)
# set Page number at the bottom
- self.cell(0, 10, "Page No {}".format(self.page_no()), 0, 0, "C")
- pass
+ self.cell(0, 10, f"Page No {self.page_no()}", 0, 0, "C")
pdf = MyPdf()
diff --git a/PDF/images.py b/PDF/images.py
index ad3c4033908..6b50707fa35 100644
--- a/PDF/images.py
+++ b/PDF/images.py
@@ -40,6 +40,6 @@
pdf.image("images\\" + filename, 0, 0, width, height)
except OSError:
- print("Skipped : " + filename)
+ print(f"Skipped : {filename}")
pdf.output("output.pdf", "F")
diff --git a/PONG_GAME.py b/PONG_GAME.py
index 8ddec6661de..53c08219342 100644
--- a/PONG_GAME.py
+++ b/PONG_GAME.py
@@ -99,17 +99,11 @@ def draw(canvas):
or ball_pos[1] >= (paddle1_pos + PAD_HEIGHT / 2 + HEIGHT / 2)
) and ball_pos[0] == (PAD_WIDTH + BALL_RADIUS):
score2 += 1
- else:
- pass
-
if (
ball_pos[1] <= (paddle2_pos + HEIGHT / 2 - PAD_HEIGHT / 2)
or ball_pos[1] >= (paddle2_pos + PAD_HEIGHT / 2 + HEIGHT / 2)
) and ball_pos[0] == (WIDTH - PAD_WIDTH - BALL_RADIUS):
score1 += 1
- else:
- pass
-
canvas.draw_text(str(score1), (250, 30), 40, "White")
canvas.draw_text(str(score2), (330, 30), 40, "White")
@@ -129,9 +123,9 @@ def keydown(key):
def keyup(key):
global paddle1_vel, paddle2_vel
- if key == simplegui.KEY_MAP["down"] or key == simplegui.KEY_MAP["up"]:
+ if key in [simplegui.KEY_MAP["down"], simplegui.KEY_MAP["up"]]:
paddle1_vel = 0
- if key == simplegui.KEY_MAP["w"] or key == simplegui.KEY_MAP["s"]:
+ if key in [simplegui.KEY_MAP["w"], simplegui.KEY_MAP["s"]]:
paddle2_vel = 0
diff --git a/Password Generator/pass_gen.py b/Password Generator/pass_gen.py
index 298f5931192..e26a6291a0c 100644
--- a/Password Generator/pass_gen.py
+++ b/Password Generator/pass_gen.py
@@ -14,18 +14,13 @@ def gen_sequence(
str.digits,
str.punctuation,
]
- sequence = ""
- for x in range(len(conditions)):
- if conditions[x]:
- sequence += possible_characters[x]
- else:
- pass
- return sequence
+ return "".join(
+ possible_characters[x] for x in range(len(conditions)) if conditions[x]
+ )
@staticmethod
def gen_password(sequence, passlength=8):
- password = "".join((secrets.choice(sequence) for i in range(passlength)))
- return password
+ return "".join(secrets.choice(sequence) for _ in range(passlength))
class Interface:
@@ -60,10 +55,7 @@ def generate_password(self, lenght):
def list_to_vertical_string(list):
- to_return = ""
- for member in list:
- to_return += f"{member}\n"
- return to_return
+ return "".join(f"{member}\n" for member in list)
class Run:
diff --git a/Patterns/pattern1.py b/Patterns/pattern1.py
index ac3869e064e..a15c2295d96 100644
--- a/Patterns/pattern1.py
+++ b/Patterns/pattern1.py
@@ -16,7 +16,7 @@ def pattern(lines):
for i in reversed(range(lines+1)):
t = ""
k = 1
- for m in range(i):
+ for _ in range(i):
if k == 10:
k = 0
t = str(t) + str(k)
diff --git a/Patterns/pattern2.py b/Patterns/pattern2.py
index 627f560de98..a58697b34fa 100644
--- a/Patterns/pattern2.py
+++ b/Patterns/pattern2.py
@@ -15,7 +15,7 @@ def main():
def pattern(lines):
t = 0
m = lines + 1
- for i in reversed(range(lines+1)):
+ for _ in reversed(range(lines+1)):
pattern = "@"*(m)
format = " "*t
t = t + 1
diff --git a/Patterns/patterns.py b/Patterns/patterns.py
index c074987e72f..18ad57a9807 100644
--- a/Patterns/patterns.py
+++ b/Patterns/patterns.py
@@ -7,10 +7,10 @@
# * * * * *
for i in range(1, 6):
- for j in range(0, i):
+ for _ in range(i):
print("*", end=" ")
- for j in range(1, (2 * (5 - i)) + 1):
+ for _ in range(1, (2 * (5 - i)) + 1):
print(" ", end="")
print("")
@@ -27,10 +27,10 @@
for i in range(1, 6):
- for j in range(0, (2 * (i - 1)) + 1):
+ for _ in range((2 * (i - 1)) + 1):
print(" ", end="")
- for j in range(0, 6 - i):
+ for _ in range(6 - i):
print("*", end=" ")
print("")
diff --git a/PongPong_Game/pong/load.py b/PongPong_Game/pong/load.py
index f06ff73da4e..1cc88b17eff 100644
--- a/PongPong_Game/pong/load.py
+++ b/PongPong_Game/pong/load.py
@@ -5,30 +5,25 @@
def load_balls(win_size: Tuple, radius: float, speed: Tuple, batch=None):
- balls = []
ball_x = win_size[0] / 2
ball_y = win_size[1] / 2
new_ball = ball.BallObject(x=ball_x, y=ball_y, radius=radius, batch=batch)
new_ball.velocity_x, new_ball.velocity_y = speed[0], speed[1]
- balls.append(new_ball)
- return balls
+ return [new_ball]
def load_paddles(
paddle_pos: Tuple, width: float, height: float, acc: Tuple, batch=None
):
- paddles = []
new_paddle = paddle.Paddle(
x=paddle_pos[0], y=paddle_pos[1], width=width, height=height, batch=batch
)
new_paddle.rightx = new_paddle.x + width
new_paddle.acc_left, new_paddle.acc_right = acc[0], acc[1]
- paddles.append(new_paddle)
- return paddles
+ return [new_paddle]
def load_rectangles(win_size: Tuple, border: float, batch=None):
- rectangles = []
top = rectangle.RectangleObject(
x=0, y=win_size[1] - border, width=win_size[0], height=border, batch=batch
)
@@ -38,5 +33,4 @@ def load_rectangles(win_size: Tuple, border: float, batch=None):
right = rectangle.RectangleObject(
x=win_size[0] - border, y=0, width=border, height=win_size[1], batch=batch
)
- rectangles.extend([left, top, right])
- return rectangles
+ return [left, top, right]
diff --git a/Prime_number.py b/Prime_number.py
index 1a345b5abe6..bc3c62ce44f 100644
--- a/Prime_number.py
+++ b/Prime_number.py
@@ -12,29 +12,19 @@ def is_prime_a(n):
if n < 2:
return False
sqrt_n = int(sqrt(n))
- for i in range(2, sqrt_n + 1):
- if n % i == 0:
- return False
- return True
+ return all(n % i != 0 for i in range(2, sqrt_n + 1))
def is_prime_b(n):
if n > 1:
- if n == 2:
- return True
- else:
+ if n != 2:
for i in range(2, n):
if n % i == 0:
return False
- return True
+ return True
return False
def is_prime_c(n):
- divisible = 0
- for i in range(1, n + 1):
- if n % i == 0:
- divisible += 1
- if divisible == 2:
- return True
- return False
+ divisible = sum(n % i == 0 for i in range(1, n + 1))
+ return divisible == 2
diff --git a/Print_List_of_Even_Numbers.py b/Print_List_of_Even_Numbers.py
index 5addb87407f..e6a5150a7eb 100644
--- a/Print_List_of_Even_Numbers.py
+++ b/Print_List_of_Even_Numbers.py
@@ -10,10 +10,5 @@
if n < 0:
print("Not a valid number, please enter a positive number!")
else:
- for i in range(0, n + 1):
- if i % 2 == 0:
- list.append(
- i
- ) # appending items to the initialised list getting from the 'if' statement
-
+ list.extend(i for i in range(n + 1) if i % 2 == 0)
print(list)
diff --git a/Print_List_of_Odd_Numbers.py b/Print_List_of_Odd_Numbers.py
index f032e035dee..6ad13ebe2f1 100644
--- a/Print_List_of_Odd_Numbers.py
+++ b/Print_List_of_Odd_Numbers.py
@@ -2,7 +2,7 @@
# Another best method to do this
n = map(list(int, input().split()))
-odd_list = list(i for i in n if i % 2 != 0)
+odd_list = [i for i in n if i % 2 != 0]
print(odd_list)
exit()
@@ -16,7 +16,7 @@
if n <= 0:
print("Invalid number, please enter a number greater than zero!")
else:
- odd_list = [i for i in range(1, n + 1, 2)] # creating string with number "i"
+ odd_list = list(range(1, n + 1, 2))
print(odd_list) # in range from 1 till "n".
diff --git a/Program of Reverse of any number.py b/Program of Reverse of any number.py
index 75edba98cc8..0d3750e8c16 100644
--- a/Program of Reverse of any number.py
+++ b/Program of Reverse of any number.py
@@ -2,7 +2,7 @@
rev = 0
while num > 0:
Rem = num % 10
- num = num // 10
+ num //= 10
rev = rev * 10 + Rem
print("The Reverse of the number", rev)
##################
diff --git a/Program to reverse Linked List( Recursive solution).py b/Program to reverse Linked List( Recursive solution).py
index 61a6165bab2..0b8ba618d82 100644
--- a/Program to reverse Linked List( Recursive solution).py
+++ b/Program to reverse Linked List( Recursive solution).py
@@ -34,11 +34,9 @@ def takeInput():
if head is None:
head = newNode
- tail = newNode
-
else:
tail.next = newNode
- tail = newNode
+ tail = newNode
i += 1
diff --git a/QR_code_generator/qrcode.py b/QR_code_generator/qrcode.py
index 753ec3ebf20..0aca13bf36d 100755
--- a/QR_code_generator/qrcode.py
+++ b/QR_code_generator/qrcode.py
@@ -9,7 +9,7 @@
print("Enter image name to save")
n = input(": ")
# Adding extension as .pnf
-d = n + ".png"
+d = f"{n}.png"
# Creating QR code
url = pyqrcode.create(s)
# Saving QR code as a png file
diff --git a/QuadraticCalc.py b/QuadraticCalc.py
index 305f7e1665a..ea9eb61ff0d 100644
--- a/QuadraticCalc.py
+++ b/QuadraticCalc.py
@@ -19,7 +19,7 @@ def findLinear(numbers): # find a & b of linear sequence
second_difference = []
for i in range(4): # input
term = str(i + 1)
- inp = int(input("Enter term " + term + ": "))
+ inp = int(input(f"Enter term {term}: "))
sequence.append(inp)
for i in range(3):
@@ -37,8 +37,6 @@ def findLinear(numbers): # find a & b of linear sequence
num = a * (n * n)
subs_diff.append((sequence[i]) - num)
b, c = findLinear(subs_diff)
- print(
- "Nth term: " + str(a) + "n^2 + " + str(b) + "n + " + str(c)
- ) # outputs nth term
+ print(f"Nth term: {str(a)}n^2 + {str(b)}n + {str(c)}")
else:
print("Sequence is not quadratic")
diff --git a/RandomNumberGame.py b/RandomNumberGame.py
index 8b3129234a6..e30ad8af68f 100644
--- a/RandomNumberGame.py
+++ b/RandomNumberGame.py
@@ -6,6 +6,7 @@
Thank you
"""
+
import os
import random
@@ -23,13 +24,13 @@
n = int(input("Enter number of players : "))
print()
-for i in range(0, n):
+for _ in range(n):
name = input("Enter name of player : ")
players.append(name)
os.system("cls")
-for i in range(0, n):
+for i in range(n):
orignum = random.randint(1, 100)
print(players[i], "your turn :", end="\n\n")
count = 0
@@ -49,11 +50,11 @@
score.append(count + 1)
os.system("cls")
print("players :\n")
-for i in range(0, n):
+for i in range(n):
print(players[i], "-", score[i])
print("\n\nwinner is :\n")
-for i in range(0, n):
+for i in range(n):
if score[i] == min(score):
print(players[i])
x = input()
diff --git a/Recursion Visulaizer/recursionVisualizer.py b/Recursion Visulaizer/recursionVisualizer.py
index 4ecc495e628..8ceede0aec0 100644
--- a/Recursion Visulaizer/recursionVisualizer.py
+++ b/Recursion Visulaizer/recursionVisualizer.py
@@ -11,60 +11,57 @@
def tree(i):
if i < 10:
return
- else:
- t.right(15)
- t.forward(15)
- t.left(20)
- t.backward(20)
- tree(2 * i / 5)
- t.left(2)
- tree(3 * i / 4)
- t.left(2)
- tree(i / 2)
- t.backward(num / 5)
- tree(random.randint(1, 100))
- tree(random.randint(1, num))
- tree(random.randint(1, num / 2))
- tree(random.randint(1, num / 3))
- tree(random.randint(1, num / 2))
- tree(random.randint(1, num))
- tree(random.randint(1, 100))
- t.forward(num / 5)
- t.right(2)
- tree(3 * i / 4)
- t.right(2)
- tree(2 * i / 5)
- t.right(2)
- t.left(10)
- t.backward(10)
- t.right(15)
- t.forward(15)
- print("tree execution complete")
+ t.right(15)
+ t.forward(15)
+ t.left(20)
+ t.backward(20)
+ tree(2 * i / 5)
+ t.left(2)
+ tree(3 * i / 4)
+ t.left(2)
+ tree(i / 2)
+ t.backward(num / 5)
+ tree(random.randint(1, 100))
+ tree(random.randint(1, num))
+ tree(random.randint(1, num / 2))
+ tree(random.randint(1, num / 3))
+ tree(random.randint(1, num / 2))
+ tree(random.randint(1, num))
+ tree(random.randint(1, 100))
+ t.forward(num / 5)
+ t.right(2)
+ tree(3 * i / 4)
+ t.right(2)
+ tree(2 * i / 5)
+ t.right(2)
+ t.left(10)
+ t.backward(10)
+ t.right(15)
+ t.forward(15)
+ print("tree execution complete")
def cycle(i):
if i < 10:
return
+ try:
+ tree(random.randint(1, i))
+ tree(random.randint(1, i * 2))
+ except:
+ print("An exception occured")
else:
- try:
- tree(random.randint(1, i))
- tree(random.randint(1, i * 2))
- except:
- print("An exception occured")
- else:
- print("No Exception occured")
- print("cycle loop complete")
+ print("No Exception occured")
+ print("cycle loop complete")
def fractal(i):
if i < 10:
return
- else:
- cycle(random.randint(1, i + 1))
- cycle(random.randint(1, i))
- cycle(random.randint(1, i - 1))
- cycle(random.randint(1, i - 2))
- print("fractal execution complete")
+ cycle(random.randint(1, i + 1))
+ cycle(random.randint(1, i))
+ cycle(random.randint(1, i - 1))
+ cycle(random.randint(1, i - 2))
+ print("fractal execution complete")
fractal(random.randint(1, 200))
diff --git a/SOUNDEX.py b/SOUNDEX.py
index 4d49ca8272e..eb561c26f1f 100644
--- a/SOUNDEX.py
+++ b/SOUNDEX.py
@@ -9,8 +9,6 @@ def SOUNDEX(TERM: str):
# List the Remove occurrences of A, E, I, O, U, Y, H, W.
Remove_List = ("A", "E", "I", "O", "U", "Y", "H", "W")
- # Save the first letter
- first_letter = TERM_LETTERS[0]
# Take the Other letters instead of First_Letter
Characters = TERM_LETTERS[1:]
# Remove items from Character using Remove_List
@@ -54,6 +52,8 @@ def SOUNDEX(TERM: str):
# If the saved Characters’s Number is the same the resulting First Letter,keep the First Letter AND remove the Number
if len(TERM_LETTERS) != 1:
+ # Save the first letter
+ first_letter = TERM_LETTERS[0]
if first_letter == TERM_LETTERS[1]:
Characters[0] = TERM[0]
else:
@@ -68,7 +68,6 @@ def SOUNDEX(TERM: str):
while len(Characters) < 4:
Characters.append(0)
if len(Characters) > 4:
- Characters = Characters[0:4]
+ Characters = Characters[:4]
- INDEX = "".join([str(C) for C in Characters])
- return INDEX
+ return "".join([str(C) for C in Characters])
diff --git a/Shivaansh.py b/Shivaansh.py
index deec715f10f..bbcd92e84e2 100644
--- a/Shivaansh.py
+++ b/Shivaansh.py
@@ -1,5 +1,5 @@
from __future__ import print_function
x = input("Enter a number: ")
-for i in range(1, 11, 1):
+for i in range(1, 11):
print(x, "x", i, "=", (x * i))
diff --git a/Snake-Water-Gun-Game.py b/Snake-Water-Gun-Game.py
index 54341645888..abe8b33b60f 100644
--- a/Snake-Water-Gun-Game.py
+++ b/Snake-Water-Gun-Game.py
@@ -6,6 +6,7 @@
And so on for other cases
"""
+
# you can use this code also, see this code is very short in compare to your code
# code starts here
"""
@@ -121,44 +122,35 @@
if user_choice == "w":
print("\n-------Mr. Computer won this round--------")
comp_point += 1
- x += 1
elif user_choice == "g":
print("\n-------You won this round-------")
user_point += 1
- x += 1
else:
print("\n-------Match draw-------")
match_draw += 1
- x += 1
-
+ x += 1
elif comp_rand == "w":
if user_choice == "g":
print("\n-------Mr. Computer won this round--------")
comp_point += 1
- x += 1
elif user_choice == "s":
print("\n-------You won this round-------")
user_point += 1
- x += 1
else:
print("\n-------Match draw-------")
match_draw += 1
- x += 1
-
+ x += 1
elif comp_rand == "g":
if user_choice == "s":
print("\n-------Mr. Computer won this round--------")
comp_point += 1
- x += 1
elif user_choice == "w":
print("\n-------You won this round-------")
user_point += 1
- x += 1
else:
print("\n-------Match draw-------")
match_draw += 1
- x += 1
-
+ x += 1
print("Here are final stats of the 10 matches : ")
print(f"Mr. Computer won : {comp_point} matches")
print(f"You won : {user_point} matches")
diff --git a/Snake_water_gun/main.py b/Snake_water_gun/main.py
index 5b13f549110..825d2b50ec6 100644
--- a/Snake_water_gun/main.py
+++ b/Snake_water_gun/main.py
@@ -33,7 +33,7 @@ class bcolors:
if b == "N":
run = False
print("Ok bubyeee! See you later")
-elif b == "Y" or b == "y":
+elif b in ["Y", "y"]:
print(
"There will be 10 matches, and the one who wins more matches will win. Let's start."
)
@@ -47,7 +47,7 @@ class bcolors:
user_choice = input("Type s for snake, w for water or g for gun: ").lower()
if user_choice == comp_choice:
- print(bcolors.HEADERS + "Game draws. Play again" + bcolors.ENDC)
+ print(f"{bcolors.HEADERS}Game draws. Play again{bcolors.ENDC}")
elif user_choice == "s" and comp_choice == "g":
print(bcolors.FAIL + "It's Snake v/s Gun You lose!" + bcolors.ENDC)
@@ -77,7 +77,7 @@ class bcolors:
i += 1
print(f"{10-i} matches left")
-if run == True:
+if run:
print(f"Your score is {score} and the final result is...")
time.sleep(3)
if score > 5:
diff --git a/Sorting Algorithims/Bubble_sort.py b/Sorting Algorithims/Bubble_sort.py
index b7dca090474..fc2f0b52b65 100644
--- a/Sorting Algorithims/Bubble_sort.py
+++ b/Sorting Algorithims/Bubble_sort.py
@@ -1,5 +1,5 @@
def bubble_sort(Lists):
- for i in range(len(Lists)):
+ for _ in range(len(Lists)):
for j in range(len(Lists) - 1):
# We check whether the adjecent number is greater or not
if Lists[j] > Lists[j + 1]:
@@ -11,7 +11,7 @@ def bubble_sort(Lists):
array_length = int(
input(print("Enter the number of elements of array or enter the length of array"))
)
-for i in range(array_length):
+for _ in range(array_length):
value = int(input(print("Enter the value in the array")))
array.append(value)
diff --git a/Sorting Algorithims/Count sort.py b/Sorting Algorithims/Count sort.py
index 6b689c226cd..55e1c516f11 100644
--- a/Sorting Algorithims/Count sort.py
+++ b/Sorting Algorithims/Count sort.py
@@ -7,7 +7,7 @@ def counting_sort(array1, max_val):
count[a] += 1
i = 0
for a in range(m):
- for c in range(count[a]):
+ for _ in range(count[a]):
array1[i] = a
i += 1
return array1
diff --git a/Sorting Algorithims/Counting Sort.py b/Sorting Algorithims/Counting Sort.py
index d4b790f6d03..c4587b9b6cc 100644
--- a/Sorting Algorithims/Counting Sort.py
+++ b/Sorting Algorithims/Counting Sort.py
@@ -9,7 +9,7 @@ def countingSort(array):
count = [0] * 10
# Store the count of each elements in count array
- for i in range(0, size):
+ for i in range(size):
count[array[i]] += 1
# Store the cummulative count
@@ -25,7 +25,7 @@ def countingSort(array):
i -= 1
# Copy the sorted elements into original array
- for i in range(0, size):
+ for i in range(size):
array[i] = output[i]
diff --git a/Sorting Algorithims/Counting-sort.py b/Sorting Algorithims/Counting-sort.py
index 09da6b6390b..1e2435b1672 100644
--- a/Sorting Algorithims/Counting-sort.py
+++ b/Sorting Algorithims/Counting-sort.py
@@ -24,7 +24,7 @@ def counting_sort(tlist, k, n):
count_list = [0] * (k + 1)
# iterate the tgt_list to put into count list
- for i in range(0, n):
+ for i in range(n):
count_list[tlist[i]] += 1
# Modify count list such that each index of count list is the combined sum of the previous counts
diff --git a/Sorting Algorithims/Cycle Sort.py b/Sorting Algorithims/Cycle Sort.py
index 20dca703907..b6fe17c0ea0 100644
--- a/Sorting Algorithims/Cycle Sort.py
+++ b/Sorting Algorithims/Cycle Sort.py
@@ -5,7 +5,7 @@ def cycleSort(array):
writes = 0
# Loop through the array to find cycles to rotate.
- for cycleStart in range(0, len(array) - 1):
+ for cycleStart in range(len(array) - 1):
item = array[cycleStart]
# Find where to put the item.
@@ -48,6 +48,6 @@ def cycleSort(array):
cycleSort(arr)
print("After sort : ")
-for i in range(0, n):
+for i in range(n):
print(arr[i], end=" ")
print() # Print a newline
diff --git a/Sorting Algorithims/Iterative Merge Sort.py b/Sorting Algorithims/Iterative Merge Sort.py
index 63173b6bf5c..3226ba538ee 100644
--- a/Sorting Algorithims/Iterative Merge Sort.py
+++ b/Sorting Algorithims/Iterative Merge Sort.py
@@ -32,11 +32,11 @@ def mergeSort(a):
# Merge call for each sub array
merge(a, left, mid, right)
- left = left + current_size * 2
+ left += current_size * 2
# Increasing sub array size by
# multiple of 2
- current_size = 2 * current_size
+ current_size *= 2
# Merge Function
@@ -45,9 +45,9 @@ def merge(a, l, m, r):
n2 = r - m
L = [0] * n1
R = [0] * n2
- for i in range(0, n1):
+ for i in range(n1):
L[i] = a[l + i]
- for i in range(0, n2):
+ for i in range(n2):
R[i] = a[m + i + 1]
i, j, k = 0, 0, l
diff --git a/Sorting Algorithims/Merge Sort.py b/Sorting Algorithims/Merge Sort.py
index 537b8b8857e..fce82fd5a22 100644
--- a/Sorting Algorithims/Merge Sort.py
+++ b/Sorting Algorithims/Merge Sort.py
@@ -14,10 +14,10 @@ def merge(arr, l, m, r):
R = [0] * (n2)
# Copy data to temp arrays L[] and R[]
- for i in range(0, n1):
+ for i in range(n1):
L[i] = arr[l + i]
- for j in range(0, n2):
+ for j in range(n2):
R[j] = arr[m + 1 + j]
# Merge the temp arrays back into arr[l..r]
diff --git a/Sorting Algorithims/Merge-sort.py b/Sorting Algorithims/Merge-sort.py
index e9d1167e5d3..57505425ad4 100644
--- a/Sorting Algorithims/Merge-sort.py
+++ b/Sorting Algorithims/Merge-sort.py
@@ -5,19 +5,17 @@
n = int(input("Enter number of elements in the list: ")) # taking value from user
for i in range(n):
- temp = int(input("Enter element" + str(i + 1) + ": "))
+ temp = int(input(f"Enter element{str(i + 1)}: "))
lst.append(temp)
def merge(ori_lst, left, mid, right):
L, R = [], [] # PREPARE TWO TEMPORARY LIST TO HOLD ELEMENTS
- for i in range(left, mid): # LOADING
- L.append(ori_lst[i])
- for i in range(mid, right): # LOADING
- R.append(ori_lst[i])
+ L.extend(ori_lst[i] for i in range(left, mid))
+ R.extend(ori_lst[i] for i in range(mid, right))
base = left # FILL ELEMENTS BACK TO ORIGINAL LIST START FROM INDEX LEFT
# EVERY LOOP CHOOSE A SMALLER ELEMENT FROM EITHER LIST
- while len(L) > 0 and len(R) > 0:
+ while L and R:
if L[0] < R[0]:
ori_lst[base] = L[0]
L.remove(L[0])
@@ -26,11 +24,11 @@ def merge(ori_lst, left, mid, right):
R.remove(R[0])
base += 1
# UNLOAD THE REMAINER
- while len(L) > 0:
+ while L:
ori_lst[base] = L[0]
L.remove(L[0])
base += 1
- while len(R) > 0:
+ while R:
ori_lst[base] = R[0]
R.remove(R[0])
base += 1
diff --git a/Sorting Algorithims/Sort the values of first list using second list.py b/Sorting Algorithims/Sort the values of first list using second list.py
index 61bfa9cad10..9233897f3d0 100644
--- a/Sorting Algorithims/Sort the values of first list using second list.py
+++ b/Sorting Algorithims/Sort the values of first list using second list.py
@@ -6,9 +6,7 @@ def sort_list(list1, list2):
zipped_pairs = zip(list2, list1)
- z = [x for _, x in sorted(zipped_pairs)]
-
- return z
+ return [x for _, x in sorted(zipped_pairs)]
# driver code
diff --git a/Sorting Algorithims/Tim_sort.py b/Sorting Algorithims/Tim_sort.py
index 9cbbb313e5d..ced031359d9 100644
--- a/Sorting Algorithims/Tim_sort.py
+++ b/Sorting Algorithims/Tim_sort.py
@@ -32,9 +32,9 @@ def merge(arr, l, m, r):
# left and right array
len1, len2 = m - l + 1, r - m
left, right = [], []
- for i in range(0, len1):
+ for i in range(len1):
left.append(arr[l + i])
- for i in range(0, len2):
+ for i in range(len2):
right.append(arr[m + 1 + i])
i, j, k = 0, 0, l
@@ -100,7 +100,7 @@ def timSort(arr, n):
# utility function to print the Array
def printArray(arr, n):
- for i in range(0, n):
+ for i in range(n):
print(arr[i], end=" ")
print()
diff --git a/Sorting Algorithims/brickSort.py b/Sorting Algorithims/brickSort.py
index 08308d05a5a..b427b201bd1 100644
--- a/Sorting Algorithims/brickSort.py
+++ b/Sorting Algorithims/brickSort.py
@@ -5,9 +5,9 @@
def oddEvenSort(arr, n):
# Initially array is unsorted
isSorted = 0
+ temp = 0
while isSorted == 0:
isSorted = 1
- temp = 0
for i in range(1, n - 1, 2):
if arr[i] > arr[i + 1]:
arr[i], arr[i + 1] = arr[i + 1], arr[i]
@@ -25,5 +25,5 @@ def oddEvenSort(arr, n):
n = len(arr)
oddEvenSort(arr, n)
-for i in range(0, n):
+for i in range(n):
print(arr[i], end=" ")
diff --git a/Sorting Algorithims/bubblesortpgm.py b/Sorting Algorithims/bubblesortpgm.py
index 2e51d9e5259..4e0c94e5a11 100644
--- a/Sorting Algorithims/bubblesortpgm.py
+++ b/Sorting Algorithims/bubblesortpgm.py
@@ -30,7 +30,7 @@ def bubbleSort(arr):
for i in range(n):
not_swap = True
# Last i elements are already in place
- for j in range(0, n - i - 1):
+ for j in range(n - i - 1):
# traverse the array from 0 to n-i-1
# Swap if the element found is greater
@@ -48,5 +48,5 @@ def bubbleSort(arr):
bubbleSort(arr)
print("Sorted array is:")
-for i in range(len(arr)):
- print("%d" % arr[i]),
+for item in arr:
+ (print("%d" % item), )
diff --git a/Sorting Algorithims/merge_sort.py b/Sorting Algorithims/merge_sort.py
index 005b4597509..28c9056b849 100644
--- a/Sorting Algorithims/merge_sort.py
+++ b/Sorting Algorithims/merge_sort.py
@@ -6,29 +6,26 @@ def merge(left_list, right_list):
left_list_length, right_list_length = len(left_list), len(right_list)
for _ in range(left_list_length + right_list_length):
- if left_list_index < left_list_length and right_list_index < right_list_length:
- # We check which value from the start of each list is smaller
- # If the item at the beginning of the left list is smaller, add it
- # to the sorted list
- if left_list[left_list_index] <= right_list[right_list_index]:
- sorted_list.append(left_list[left_list_index])
- left_list_index += 1
- # If the item at the beginning of the right list is smaller, add it
- # to the sorted list
- else:
- sorted_list.append(right_list[right_list_index])
- right_list_index += 1
-
- # If we've reached the end of the of the left list, add the elements
- # from the right list
- elif left_list_index == left_list_length:
- sorted_list.append(right_list[right_list_index])
- right_list_index += 1
- # If we've reached the end of the of the right list, add the elements
- # from the left list
- elif right_list_index == right_list_length:
+ if (
+ left_list_index < left_list_length
+ and right_list_index < right_list_length
+ and left_list[left_list_index] <= right_list[right_list_index]
+ or (
+ left_list_index >= left_list_length
+ or right_list_index >= right_list_length
+ )
+ and left_list_index != left_list_length
+ and right_list_index == right_list_length
+ ):
sorted_list.append(left_list[left_list_index])
left_list_index += 1
+ elif (
+ left_list_index < left_list_length
+ and right_list_index < right_list_length
+ or left_list_index == left_list_length
+ ):
+ sorted_list.append(right_list[right_list_index])
+ right_list_index += 1
return sorted_list
diff --git a/Sorting Algorithims/selectionSort.py b/Sorting Algorithims/selectionSort.py
index 75fbafcf79f..9eec1e51799 100644
--- a/Sorting Algorithims/selectionSort.py
+++ b/Sorting Algorithims/selectionSort.py
@@ -2,7 +2,7 @@
N = int(input("Enter The Size Of List"))
-for i in range(0, N):
+for _ in range(N):
a = int(input("Enter The number"))
list.append(a)
@@ -11,7 +11,7 @@
# Every time The Element Of List is fetched and the smallest element in remaining list is found and if it comes out
# to be smaller than the element fetched then it is swapped with smallest number.
-for i in range(0, len(list) - 1):
+for i in range(len(list) - 1):
smallest = list[i + 1]
k = 0
for j in range(i + 1, len(list)):
diff --git a/Sorting Algorithims/sorting.py b/Sorting Algorithims/sorting.py
index c56beca7375..c8325bb2548 100644
--- a/Sorting Algorithims/sorting.py
+++ b/Sorting Algorithims/sorting.py
@@ -2,10 +2,10 @@
temp = 0
print("Elements of original array: ")
-for i in range(0, len(arr)):
- print(arr[i], end=" ")
+for item in arr:
+ print(item, end=" ")
-for i in range(0, len(arr)):
+for i in range(len(arr)):
for j in range(i + 1, len(arr)):
if arr[i] > arr[j]:
temp = arr[i]
@@ -16,5 +16,5 @@
print("Elements of array sorted in ascending order: ")
-for i in range(0, len(arr)):
- print(arr[i], end=" ")
+for item_ in arr:
+ print(item_, end=" ")
diff --git a/Sorting Algorithims/stooge_sort.py b/Sorting Algorithims/stooge_sort.py
index ace9ba22038..00296bd69fa 100644
--- a/Sorting Algorithims/stooge_sort.py
+++ b/Sorting Algorithims/stooge_sort.py
@@ -14,7 +14,7 @@ def stooge_sort_(arr, l, h):
arr[h] = t
# If there are more than 2 elements in array
- if h - l + 1 > 2:
+ if h - l > 1:
t = (int)((h - l + 1) / 3)
# Recursively sort first 2 / 3 elements
diff --git a/Sorting Algorithims/wave_sort.py b/Sorting Algorithims/wave_sort.py
index cdaeb75afb2..81c6937ea07 100644
--- a/Sorting Algorithims/wave_sort.py
+++ b/Sorting Algorithims/wave_sort.py
@@ -7,5 +7,5 @@ def sortInWave(arr, n):
arr = []
arr = input("Enter the arr")
sortInWave(arr, len(arr))
-for i in range(0, len(arr)):
+for i in range(len(arr)):
print(arr[i], " ")
diff --git a/StringToBinary.py b/StringToBinary.py
index ebaabe2e152..c8e80ebdb5c 100644
--- a/StringToBinary.py
+++ b/StringToBinary.py
@@ -2,11 +2,8 @@
for chr in text:
bin = ""
- asciiVal = int(ord(chr))
+ asciiVal = ord(chr)
while asciiVal > 0:
- if asciiVal % 2 == 0:
- bin = bin + "0"
- else:
- bin = bin + "1"
- asciiVal = int(asciiVal / 2)
- print(bin + " : " + bin[::-1])
+ bin = f"{bin}0" if asciiVal % 2 == 0 else f"{bin}1"
+ asciiVal //= 2
+ print(f"{bin} : {bin[::-1]}")
diff --git a/Swap numbers.py b/Swap numbers.py
index 15fe20efc2e..753ab281ac2 100644
--- a/Swap numbers.py
+++ b/Swap numbers.py
@@ -3,20 +3,12 @@
x = 5
y = 10
-# To take inputs from the user
-#x = input('Enter value of x: ')
-#y = input('Enter value of y: ')
-
-# create a temporary variable and swap the values
-temp = x
-x = y
-y = temp
-
+x, y = y, x
# in python we can swap without using a third variablex
x,y = y,x
print(x,y)
# output is 10,5
-print('The value of x after swapping: {}'.format(x))
-print('The value of y after swapping: {}'.format(y))
+print(f'The value of x after swapping: {x}')
+print(f'The value of y after swapping: {y}')
diff --git a/Test-Case-Generator/test_case.py b/Test-Case-Generator/test_case.py
index 05c9e77d60a..03b905b0598 100644
--- a/Test-Case-Generator/test_case.py
+++ b/Test-Case-Generator/test_case.py
@@ -214,7 +214,6 @@ def done(self, output):
self.a = [0]
self.try_forget()
self.retrieve_home()
- pass
def display(self):
self.y_scroll = Scrollbar(gui)
@@ -506,9 +505,7 @@ def submit(self):
self.char_lis = list(self.char_list.get().split())
if self.char_lis[0] == "(Space":
return
- except IndexError:
- return
- except ValueError:
+ except (IndexError, ValueError):
return
except AttributeError:
pass
@@ -608,7 +605,7 @@ def generate(self): # Type 1
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.output.insert(END, self.n)
self.output.insert(END, "\n")
@@ -640,7 +637,7 @@ def generate(self): # Type 2
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.m = randint(self.m_min, self.m_max)
self.output.insert(END, self.n)
@@ -674,7 +671,7 @@ def generate(self): # Type 3
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.a = randint(self.a_min, self.a_max)
self.b = randint(self.b_min, self.b_max)
self.output.insert(END, self.a)
@@ -705,7 +702,7 @@ def generate(self): # Type 4
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.m = randint(self.m_min, self.m_max)
self.output.insert(END, self.n)
@@ -752,7 +749,7 @@ def generate(self): # Type 5
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.m = randint(self.m_min, self.m_max)
self.k = randint(self.k_min, self.k_max)
@@ -797,7 +794,7 @@ def generate(self): # Type 6
self.output.insert(END, " ")
self.output.insert(END, self.m)
self.output.insert(END, "\n")
- for i in range(self.n):
+ for _ in range(self.n):
self.a = [0] * self.m
for j in range(self.m):
self.a[j] = randint(self.a_min, self.a_max)
@@ -825,7 +822,7 @@ def generate(self): # Type 7
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.output.insert(END, self.n)
self.output.insert(END, "\n")
@@ -856,14 +853,14 @@ def generate(self): # Type 8
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.m = randint(self.m_min, self.m_max)
self.output.insert(END, self.n)
self.output.insert(END, " ")
self.output.insert(END, self.m)
self.output.insert(END, "\n")
- for j in range(self.m):
+ for _ in range(self.m):
self.a = randint(self.a_min, self.a_max)
self.b = randint(self.b_min, self.b_max)
self.output.insert(END, self.a)
@@ -892,7 +889,7 @@ def generate(self): # Type 9
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.a = choices(self.char_lis, k=self.n)
self.output.insert(END, "".join(self.a))
@@ -921,7 +918,7 @@ def generate(self): # Type 10
self.output.delete("1.0", END)
self.output.insert(END, self.t)
self.output.insert(END, "\n")
- for i in range(self.t):
+ for _ in range(self.t):
self.n = randint(self.n_min, self.n_max)
self.k = randint(self.k_min, self.k_max)
self.m = randint(self.m_min, self.m_max)
diff --git a/TicTacToe.py b/TicTacToe.py
index f1b61b80df9..074b199135e 100644
--- a/TicTacToe.py
+++ b/TicTacToe.py
@@ -1,16 +1,16 @@
def print_tic_tac_toe(values):
print("\n")
print("\t | |")
- print("\t {} | {} | {}".format(values[0], values[1], values[2]))
+ print(f"\t {values[0]} | {values[1]} | {values[2]}")
print('\t_____|_____|_____')
-
+
print("\t | |")
- print("\t {} | {} | {}".format(values[3], values[4], values[5]))
+ print(f"\t {values[3]} | {values[4]} | {values[5]}")
print('\t_____|_____|_____')
-
+
print("\t | |")
-
- print("\t {} | {} | {}".format(values[6], values[7], values[8]))
+
+ print(f"\t {values[6]} | {values[7]} | {values[8]}")
print("\t | |")
print("\n")
@@ -32,35 +32,26 @@ def check_win(player_pos, cur_player):
# All possible winning combinations
soln = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [1, 4, 7], [2, 5, 8], [3, 6, 9], [1, 5, 9], [3, 5, 7]]
-
- # Loop to check if any winning combination is satisfied
- for x in soln:
- if all(y in player_pos[cur_player] for y in x):
-
- # Return True if any winning combination satisfies
- return True
- # Return False if no combination is satisfied
- return False
+
+ return any(all(y in player_pos[cur_player] for y in x) for x in soln)
# Function to check if the game is drawn
def check_draw(player_pos):
- if len(player_pos['X']) + len(player_pos['O']) == 9:
- return True
- return False
+ return len(player_pos['X']) + len(player_pos['O']) == 9
# Function for a single game of Tic Tac Toe
def single_game(cur_player):
# Represents the Tic Tac Toe
- values = [' ' for x in range(9)]
-
+ values = [' ' for _ in range(9)]
+
# Stores the positions occupied by X and O
player_pos = {'X':[], 'O':[]}
-
+
# Game Loop for a single game of Tic Tac Toe
while True:
print_tic_tac_toe(values)
-
+
# Try exception block for MOVE input
try:
print("Player ", cur_player, " turn. Which box? : ", end="")
@@ -68,119 +59,105 @@ def single_game(cur_player):
except ValueError:
print("Wrong Input!!! Try Again")
continue
-
+
# Sanity check for MOVE inout
if move < 1 or move > 9:
print("Wrong Input!!! Try Again")
continue
-
+
# Check if the box is not occupied already
if values[move-1] != ' ':
print("Place already filled. Try again!!")
continue
-
+
# Update game information
-
+
# Updating grid status
values[move-1] = cur_player
-
+
# Updating player positions
player_pos[cur_player].append(move)
-
+
# Function call for checking win
if check_win(player_pos, cur_player):
print_tic_tac_toe(values)
print("Player ", cur_player, " has won the game!!")
print("\n")
return cur_player
-
+
# Function call for checking draw game
if check_draw(player_pos):
print_tic_tac_toe(values)
print("Game Drawn")
print("\n")
return 'D'
-
+
# Switch player moves
- if cur_player == 'X':
- cur_player = 'O'
- else:
- cur_player = 'X'
+ cur_player = 'O' if cur_player == 'X' else 'X'
if __name__ == "__main__":
print("Player 1")
player1 = input("Enter the name : ")
print("\n")
-
+
print("Player 2")
player2 = input("Enter the name : ")
print("\n")
-
+
# Stores the player who chooses X and O
cur_player = player1
-
+
# Stores the choice of players
player_choice = {'X' : "", 'O' : ""}
-
+
# Stores the options
options = ['X', 'O']
-
+
# Stores the scoreboard
score_board = {player1: 0, player2: 0}
print_scoreboard(score_board)
-
+
# Game Loop for a series of Tic Tac Toe
- # The loop runs until the players quit
+ # The loop runs until the players quit
while True:
-
+
# Player choice Menu
print("Turn to choose for", cur_player)
print("Enter 1 for X")
print("Enter 2 for O")
print("Enter 3 to Quit")
-
+
# Try exception for CHOICE input
try:
choice = int(input())
except ValueError:
print("Wrong Input!!! Try Again\n")
continue
-
- # Conditions for player choice
+
+ # Conditions for player choice
if choice == 1:
player_choice['X'] = cur_player
- if cur_player == player1:
- player_choice['O'] = player2
- else:
- player_choice['O'] = player1
-
+ player_choice['O'] = player2 if cur_player == player1 else player1
elif choice == 2:
player_choice['O'] = cur_player
- if cur_player == player1:
- player_choice['X'] = player2
- else:
- player_choice['X'] = player1
-
+ player_choice['X'] = player2 if cur_player == player1 else player1
elif choice == 3:
print("Final Scores")
print_scoreboard(score_board)
break
-
+
else:
print("Wrong Choice!!!! Try Again\n")
-
+
# Stores the winner in a single game of Tic Tac Toe
winner = single_game(options[choice-1])
-
+
# Edits the scoreboard according to the winner
if winner != 'D' :
player_won = player_choice[winner]
score_board[player_won] = score_board[player_won] + 1
-
+
print_scoreboard(score_board)
# Switch player who chooses X or O
- if cur_player == player1:
- cur_player = player2
- else:
- cur_player = player1
+ cur_player = player2 if cur_player == player1 else player1
diff --git a/Tic_Tac_Toe.py b/Tic_Tac_Toe.py
index b71b5b1d290..ff003e28321 100644
--- a/Tic_Tac_Toe.py
+++ b/Tic_Tac_Toe.py
@@ -15,15 +15,15 @@ def introduction():
def draw_board(board):
print(" | |")
- print(" " + board[7] + " | " + board[8] + " | " + board[9])
+ print(f" {board[7]} | {board[8]} | {board[9]}")
print(" | |")
print("-------------")
print(" | |")
- print(" " + board[4] + " | " + board[5] + " | " + board[6])
+ print(f" {board[4]} | {board[5]} | {board[6]}")
print(" | |")
print("-------------")
print(" | |")
- print(" " + board[1] + " | " + board[2] + " | " + board[3])
+ print(f" {board[1]} | {board[2]} | {board[3]}")
print(" | |")
@@ -31,23 +31,17 @@ def input_player_letter():
# Lets the player type witch letter they want to be.
# Returns a list with the player's letter as the first item, and the computer's letter as the second.
letter = ""
- while not (letter == "X" or letter == "O"):
+ while letter not in {"X", "O"}:
print("Do you want to be X or O? ")
letter = input("> ").upper()
# the first element in the list is the player’s letter, the second is the computer's letter.
- if letter == "X":
- return ["X", "O"]
- else:
- return ["O", "X"]
+ return ["X", "O"] if letter == "X" else ["O", "X"]
def frist_player():
guess = random.randint(0, 1)
- if guess == 0:
- return "Computer"
- else:
- return "Player"
+ return "Computer" if guess == 0 else "Player"
def play_again():
@@ -75,10 +69,7 @@ def is_winner(bo, le):
def get_board_copy(board):
- dupe_board = []
- for i in board:
- dupe_board.append(i)
- return dupe_board
+ return list(board)
def is_space_free(board, move):
@@ -97,23 +88,12 @@ def get_player_move(board):
def choose_random_move_from_list(board, moveslist):
- possible_moves = []
- for i in moveslist:
- if is_space_free(board, i):
- possible_moves.append(i)
-
- if len(possible_moves) != 0:
- return random.choice(possible_moves)
- else:
- return None
+ possible_moves = [i for i in moveslist if is_space_free(board, i)]
+ return random.choice(possible_moves) if possible_moves else None
def get_computer_move(board, computer_letter):
- if computer_letter == "X":
- player_letter = "O"
- else:
- player_letter = "X"
-
+ player_letter = "O" if computer_letter == "X" else "X"
for i in range(1, 10):
copy = get_board_copy(board)
if is_space_free(copy, i):
@@ -129,20 +109,19 @@ def get_computer_move(board, computer_letter):
return i
move = choose_random_move_from_list(board, [1, 3, 7, 9])
- if move != None:
- return move
+ if move is None:
+ return (
+ 5
+ if is_space_free(board, 5)
+ else choose_random_move_from_list(board, [2, 4, 6, 8])
+ )
- if is_space_free(board, 5):
- return 5
-
- return choose_random_move_from_list(board, [2, 4, 6, 8])
+ else:
+ return move
def is_board_full(board):
- for i in range(1, 10):
- if is_space_free(board, i):
- return False
- return True
+ return not any(is_space_free(board, i) for i in range(1, 10))
print("Welcome To Tic Tac Toe!")
@@ -151,7 +130,7 @@ def is_board_full(board):
the_board = [" "] * 10
player_letter, computer_letter = input_player_letter()
turn = frist_player()
- print("The " + turn + " go frist.")
+ print(f"The {turn} go frist.")
game_is_playing = True
while game_is_playing:
@@ -165,13 +144,12 @@ def is_board_full(board):
draw_board(the_board)
print("Hoory! You have won the game!")
game_is_playing = False
+ elif is_board_full(the_board):
+ draw_board(the_board)
+ print("The game is tie!")
+ break
else:
- if is_board_full(the_board):
- draw_board(the_board)
- print("The game is tie!")
- break
- else:
- turn = "computer"
+ turn = "computer"
else:
# Computer's turn
move = get_computer_move(the_board, computer_letter)
@@ -181,12 +159,11 @@ def is_board_full(board):
draw_board(the_board)
print("The computer has beaten you! You Lose.")
game_is_playing = False
+ elif is_board_full(the_board):
+ draw_board(the_board)
+ print("The game is a tie!")
+ break
else:
- if is_board_full(the_board):
- draw_board(the_board)
- print("The game is a tie!")
- break
- else:
- turn = "player"
+ turn = "player"
if not play_again():
break
diff --git a/Timetable_Operations.py b/Timetable_Operations.py
index 0f75e59e516..2e445a96b93 100644
--- a/Timetable_Operations.py
+++ b/Timetable_Operations.py
@@ -37,16 +37,14 @@
# special condition below :
if Ht < 10:
- h = "0" + str(Ht)
+ h = f"0{str(Ht)}"
Ht = h
if Mt < 10:
- m = "0" + str(Mt)
+ m = f"0{str(Mt)}"
Mt = m
if St < 10:
- s = "0" + str(St)
+ s = f"0{str(St)}"
St = s
# add '0' to the empty spaces (caused by previous operations) in the final result!
-print(
- "final result is :", str(Ht) + ":" + str(Mt) + ":" + str(St)
-) # final result (formatted in clock)
+print("final result is :", f"{str(Ht)}:{str(Mt)}:{str(St)}")
diff --git a/To print series 1,12,123,1234......py b/To print series 1,12,123,1234......py
index 93adda5ee67..5a07a6c2cab 100644
--- a/To print series 1,12,123,1234......py
+++ b/To print series 1,12,123,1234......py
@@ -7,7 +7,7 @@ def num(a):
# outer loop to handle number of rows
- for i in range(0, a):
+ for i in range(a):
# re assigning num
@@ -17,8 +17,7 @@ def num(a):
# values changing acc. to outer loop
- for k in range(0, i + 1):
-
+ for _ in range(i + 1):
# printing number
print(num, end=" ")
diff --git a/Triplets with zero sum/find_Triplets_with_zero_sum.py b/Triplets with zero sum/find_Triplets_with_zero_sum.py
index 2a2d2b7688d..641208f2266 100644
--- a/Triplets with zero sum/find_Triplets_with_zero_sum.py
+++ b/Triplets with zero sum/find_Triplets_with_zero_sum.py
@@ -23,7 +23,7 @@ def find_Triplets_with_zero_sum(arr, num):
arr.sort()
# Run a loop until l is less than r, if the sum of array[l], array[r] is equal to zero then print the triplet and break the loop
- for index in range(0, num - 1):
+ for index in range(num - 1):
# initialize left and right
left = index + 1
diff --git a/Tweet Pre-Processing.py b/Tweet Pre-Processing.py
index 43d3e6c13b3..88301fa1e92 100644
--- a/Tweet Pre-Processing.py
+++ b/Tweet Pre-Processing.py
@@ -106,12 +106,7 @@
# In[24]:
-cleaned = []
-for i in tokens:
- if i not in stoper and i not in punct:
- cleaned.append(i)
-
-
+cleaned = [i for i in tokens if i not in stoper and i not in punct]
print(cleaned)
diff --git a/Type of angles of a triangle.py b/Type of angles of a triangle.py
index 3281f0d9980..7b6cac668be 100644
--- a/Type of angles of a triangle.py
+++ b/Type of angles of a triangle.py
@@ -1,8 +1,6 @@
# This program will return the type of the triangle.
# User has to enter the angles of the triangle in degrees.
def angle_type():
- angles = []
-
myDict = {
"All angles are less than 90°.": "Acute Angle Triangle",
"Has a right angle (90°)": "Right Angle Triangle",
@@ -12,44 +10,30 @@ def angle_type():
print("**************Enter the angles of your triangle to know it's type*********")
angle1 = int(input("Enter angle1 : "))
- if angle1 < 180 and angle1 > 0:
- angles.append(angle1)
- else:
+ if angle1 >= 180 or angle1 <= 0:
print("Please enter a value less than 180°")
angle1 = int(input())
- angles.append(angle1)
-
angle2 = int(input("Enter angle2 : "))
- if angle2 < 180 and angle2 > 0:
- angles.append(angle2)
- else:
+ if angle2 >= 180 or angle2 <= 0:
print("Please enter a value less than 180°")
angle2 = int(input())
- angles.append(angle2)
-
angle3 = int(input("Enter angle3 : "))
- if angle3 < 180 and angle3 > 0:
- angles.append(angle3)
- else:
+ if angle3 >= 180 or angle3 <= 0:
print("Please enter a value less than 180°")
angle3 = int(input())
- angles.append(angle3)
-
+ angles = [angle1, angle2, angle3]
sum_of_angles = angle1 + angle2 + angle3
if sum_of_angles > 180 or sum_of_angles < 180:
print("It is not a triangle!Please enter valid angles.")
return -1
- print("You have entered : " + str(angles))
+ print(f"You have entered : {angles}")
if angle1 >= 90 or angle2 >= 90 or angle3 >= 90:
print(myDict.get("Has a right angle (90°)"))
- elif angle1 < 90 and angle2 < 90 and angle3 < 90:
+ else:
print(myDict.get("All angles are less than 90°."))
- elif angle1 > 90 or angle2 > 90 or angle3 > 90:
- print(myDict.get("Has an angle more than 90°"))
-
angle_type()
diff --git a/Type_of_angles_of_triangle.py b/Type_of_angles_of_triangle.py
index 62978777f56..ca752ca39ad 100644
--- a/Type_of_angles_of_triangle.py
+++ b/Type_of_angles_of_triangle.py
@@ -3,8 +3,6 @@
def angle_type():
- angles = []
-
myDict = {
"All angles are less than 90°.": "Acute Angle Triangle",
"Has a right angle (90°)": "Right Angle Triangle",
@@ -17,38 +15,24 @@ def angle_type():
angle1 = int(input("Enter angle 1 : "))
- if angle1 < 180 and angle1 > 0:
- angles.append(angle1)
-
- else:
+ if angle1 >= 180 or angle1 <= 0:
print("Please enter a value less than 180°")
angle1 = int(input())
- angles.append(angle1)
-
# Taking Angle 2
angle2 = int(input("Enter angle2 : "))
- if angle2 < 180 and angle2 > 0:
- angles.append(angle2)
-
- else:
+ if angle2 >= 180 or angle2 <= 0:
print("Please enter a value less than 180°")
angle2 = int(input("Enter angle 2 :"))
- angles.append(angle2)
-
# Taking Angle 3
angle3 = int(input("Enter angle3 : "))
- if angle3 < 180 and angle3 > 0:
- angles.append(angle3)
-
- else:
+ if angle3 >= 180 or angle3 <= 0:
print("Please enter a value less than 180°")
angle3 = int(input("Enter angle3 : "))
- angles.append(angle3)
-
+ angles = [angle1, angle2, angle3]
# Answer
sum_of_angles = angle1 + angle2 + angle3
@@ -56,7 +40,7 @@ def angle_type():
print("It is not a triangle!Please enter valid angles.")
return -1
- print("You have entered : " + str(angles))
+ print(f"You have entered : {angles}")
if angle1 == 90 or angle2 == 90 or angle3 == 90:
print(myDict.get("Has a right angle (90°)"))
diff --git a/VoiceAssistant/Project_Basic_struct/VoiceAssistant_main.py b/VoiceAssistant/Project_Basic_struct/VoiceAssistant_main.py
index 1c2baf70897..eecaeefafd4 100644
--- a/VoiceAssistant/Project_Basic_struct/VoiceAssistant_main.py
+++ b/VoiceAssistant/Project_Basic_struct/VoiceAssistant_main.py
@@ -14,7 +14,7 @@ def main():
print("\nSay \"Hello Python\" to activate the Voice Assistant!")
start += 1
while True:
-
+
q = short_hear().lower()
if "close" in q:
greet("end")
@@ -23,7 +23,7 @@ def main():
greet("start")
print_menu()
while True:
-
+
query = hear().lower()
if "close" in query:
greet("end")
@@ -32,32 +32,32 @@ def main():
elif "text to speech" in query:
tts()
time.sleep(4)
-
+
elif "search on google" in query or "search google" in query or "google" in query:
google_search()
time.sleep(10)
-
+
elif "search on wikipedia" in query or "search wikipedia" in query or "wikipedia" in query:
wiki_search()
time.sleep(10)
-
+
elif "word" in query:
ms_word()
time.sleep(5)
-
+
elif "book" in query:
pdf_read()
time.sleep(10)
-
+
elif "speech to text" in query:
big_text()
time.sleep(5)
-
+
else:
print("I could'nt understand what you just said!")
speak("I could'nt understand what you just said!")
-
+
print("\nDo you want to continue? if yes then say " + Fore.YELLOW + "\"YES\"" + Fore.WHITE + " else say " + Fore.YELLOW + "\"CLOSE PYTHON\"")
speak("Do you want to continue? if yes then say YES else say CLOSE PYTHON")
qry = hear().lower()
diff --git a/VoiceAssistant/Project_Basic_struct/dictator.py b/VoiceAssistant/Project_Basic_struct/dictator.py
index f5cb71fb014..1f57b85763c 100644
--- a/VoiceAssistant/Project_Basic_struct/dictator.py
+++ b/VoiceAssistant/Project_Basic_struct/dictator.py
@@ -7,7 +7,7 @@
def big_text():
print("By default, I will record your voice for 60 seconds.\nDo you want to change this default timing?")
speak("By default, I will record your voice for 60 seconds.\nDo you want to change this default timing?")
- print(Fore.YELLOW + "Yes or No")
+ print(f"{Fore.YELLOW}Yes or No")
query = hear().lower()
duration_time = 0
diff --git a/VoiceAssistant/Project_Basic_struct/speakListen.py b/VoiceAssistant/Project_Basic_struct/speakListen.py
index e16db721abb..70755d13932 100644
--- a/VoiceAssistant/Project_Basic_struct/speakListen.py
+++ b/VoiceAssistant/Project_Basic_struct/speakListen.py
@@ -30,7 +30,7 @@ def greet(g):
Args:
g (str): To decide whether to say hello or good bye
"""
- if g == "start" or g == "s":
+ if g in ["start", "s"]:
h = datetime.datetime.now().hour
text = ''
if h > 12 and h < 17:
@@ -41,8 +41,8 @@ def greet(g):
text = "Hello! Good Evening "
text += " I am Python, How may i help you ?"
speak(text)
-
- elif g == "quit" or g == "end" or g == "over" or g == "e":
+
+ elif g in ["quit", "end", "over", "e"]:
text = 'Thank you!. Good Bye ! '
speak(text)
@@ -72,7 +72,7 @@ def hear():
recognizing()
speech = r.recognize_google(speech)
print(speech + "\n")
-
+
except Exception as exception:
print(exception)
return "None"
@@ -111,11 +111,11 @@ def long_hear(duration_time = 60):
#speech = r.listen(source)
# convert speech to text
try:
- print(Fore.RED +"Recognizing...")
+ print(f"{Fore.RED}Recognizing...")
#recognizing()
speech = r.recognize_google(speech)
- #print(speech + "\n")
-
+ #print(speech + "\n")
+
except Exception as exception:
print(exception)
return "None"
@@ -145,11 +145,11 @@ def short_hear(duration_time = 5):
#speech = r.listen(source)
# convert speech to text
try:
- print(Fore.RED +"Recognizing...")
+ print(f"{Fore.RED}Recognizing...")
#recognizing()
speech = r.recognize_google(speech)
- #print(speech + "\n")
-
+ #print(speech + "\n")
+
except Exception as exception:
print(exception)
return "None"
@@ -157,13 +157,6 @@ def short_hear(duration_time = 5):
-if __name__ == '__main__':
- # print("Enter your name")
- # name = hear()
- # speak("Hello " + name)
- # greet("s")
- # greet("e")
- pass
#hear()
#recognizing()
diff --git a/VoiceAssistant/Project_Basic_struct/textRead.py b/VoiceAssistant/Project_Basic_struct/textRead.py
index 030c78501f0..5dec893e8c5 100644
--- a/VoiceAssistant/Project_Basic_struct/textRead.py
+++ b/VoiceAssistant/Project_Basic_struct/textRead.py
@@ -14,13 +14,11 @@ def ms_word():
try:
speak("Enter the document's location - ")
location = input("Enter the document's location - ")
-
+
file_loc = doubleslash(location)
-
+
doc = docx.Document(file_loc)
- fullText = []
- for para in doc.paragraphs:
- fullText.append(para.text)
+ fullText = [para.text for para in doc.paragraphs]
#print(fullText)
doc_file = '\n'.join(fullText)
print(doc_file)
@@ -37,7 +35,7 @@ def pdf_read():
try:
speak("Enter the document's location - ")
location = input("Enter the document's location - ")
-
+
path = doubleslash(location)
pdf = fitz.open(path)
details = pdf.metadata # Stores the meta-data which generally includes Author name and Title of book/document.
@@ -47,32 +45,40 @@ def pdf_read():
print(f"ERROR - {exp}")
print(Fore.YELLOW + "I could'nt locate the file!\nIf you didn't specify the extension of the file, please specify it.")
return "None"
- try :
+ try:
""" 1. Author
2. Creator
3. Producer
4. Title """
-
+
author = details["author"]
#print("Author : ",author)
-
+
title = details["title"]
#print("Title : ",title)
-
+
#print(details)
#print("Total Pages : ",total_pages)
book_details(author, title, total_pages)
speak(f" Title {title}")
speak(f" Author {author}")
speak(f" Total Pages {total_pages}")
-
+
# TODO : Deal with the Index
toc = pdf.get_toc()
print("Say 1 or \"ONLY PRINT INDEX\" - if you want me to print the book's index.\nSay 2 if you want me to print and make me speak out the book's index.\nSay any key if you don't want to print the index.'")
speak("Say 1 or only print index if you want me to print the book's index.\nSay 2 if you want me to print and make me speak out the book's index.\nSay any key if you don't want to print the index.'")
q = hear().lower()
- if "only print" in q or "1" in q or "one" in q or "vone" in q or 'only' in q or "index only" in q or 'only' in q or "print only" in q:
+ if (
+ "only print" in q
+ or "1" in q
+ or "one" in q
+ or "vone" in q
+ or 'only' in q
+ or "index only" in q
+ or "print only" in q
+ ):
print_index(toc)
time.sleep(15)
elif "speak" in q or "2" in q or 'two' in q:
@@ -84,18 +90,15 @@ def pdf_read():
time.sleep(4)
else:
time.sleep(4)
- pass
-
-
"""Allow the user to do the following
1. Read/speak a page
2. Read/speak a range of pages
3. Lesson
4. Read/speak a whole book
"""
-
+
#time.sleep(5)
-
+
print("____________________________________________________________________________________________________________")
print("1. Print/speak a single page\n2. Print/speak a range of pages\n3. Print/speak a Lesson\n4. Read/speak a whole book")
speak("1. Print/speak a single page\n2. Print/speak a range of pages\n3. Print/speak a Lesson\n4. Read/speak a whole book")
@@ -118,7 +121,7 @@ def pdf_read():
print(text.replace('\t',' '))
speak(text.replace('\t',' '))
-
+
elif 'range' in q or "multiple" in q:
try:
start_pg_no = int(input("Starting Page Number - "))
@@ -143,15 +146,7 @@ def pdf_read():
try:
key = input("Lesson name - ")
start_pg_no, end_pg_no = search_in_toc(toc, key, total_pages)
- if start_pg_no != None and end_pg_no != None:
- start_pg_no, end_pg_no = map(int,search_in_toc(toc, key, total_pages))
-
- for i in range(start_pg_no - 1, end_pg_no):
- page = pdf.load_page(i)
- text = page.get_text('text')
- print(text.replace('\t',' '))
- speak(text.replace('\t',' '))
- else:
+ if start_pg_no is None or end_pg_no is None:
print("Try Again.")
speak("Try Again.")
speak("Lesson name")
@@ -163,7 +158,15 @@ def pdf_read():
text = page.get_text('text')
print(text.replace('\t',' '))
speak(text.replace('\t',' '))
-
+
+ else:
+ start_pg_no, end_pg_no = map(int,search_in_toc(toc, key, total_pages))
+
+ for i in range(start_pg_no - 1, end_pg_no):
+ page = pdf.load_page(i)
+ text = page.get_text('text')
+ print(text.replace('\t',' '))
+ speak(text.replace('\t',' '))
except Exception:
print("Try Again! Lesson could not be found.")
speak("Try Again.Lesson could not be found")
@@ -172,7 +175,7 @@ def pdf_read():
start_pg_no, end_pg_no = search_in_toc(toc, key, total_pages)
if start_pg_no != None and end_pg_no != None:
start_pg_no, end_pg_no = map(int,search_in_toc(toc, key, total_pages))
-
+
for i in range(start_pg_no - 1, end_pg_no):
page = pdf.load_page(i)
text = page.get_text('text')
@@ -197,7 +200,6 @@ def pdf_read():
time.sleep(5)
except Exception as e:
print(e)
- pass
pdf.close()
def doubleslash(text):
@@ -257,19 +259,18 @@ def search_in_toc(toc, key, totalpg):
"""
for i in range(len(toc) - 1):
topic = toc[i]
- if i != len(toc) - 2:
- if topic[1] == key:
- nexttopic = toc[i + 1]
- return (topic[2], nexttopic[2])
- elif topic[1].lower() == key:
- nexttopic = toc[i + 1]
- return (topic[2], nexttopic[2])
- else:
+ if i == len(toc) - 2:
if topic[1] == key:
return (topic[2], totalpg)
elif topic[1].lower() == key:
-
+
return (topic[2], totalpg)
+ elif topic[1] == key:
+ nexttopic = toc[i + 1]
+ return (topic[2], nexttopic[2])
+ elif topic[1].lower() == key:
+ nexttopic = toc[i + 1]
+ return (topic[2], nexttopic[2])
return None,None
def book_details(author, title, total_pages):
diff --git a/VoiceAssistant/Project_Basic_struct/websiteWork.py b/VoiceAssistant/Project_Basic_struct/websiteWork.py
index c20a2792791..853eb8c7317 100644
--- a/VoiceAssistant/Project_Basic_struct/websiteWork.py
+++ b/VoiceAssistant/Project_Basic_struct/websiteWork.py
@@ -13,16 +13,16 @@
def google_search():
"""[Goes to google and searches the website asked by the user]
"""
- google_search_link = "https://www.google.co.in/search?q="
google_search = "What do you want me to search on Google? "
print(google_search)
speak(google_search)
-
+
query = hear()
if query != "None":
+ google_search_link = "https://www.google.co.in/search?q="
webbrowser.open(google_search_link+query)
- elif query == "None":
+ else:
print("I could'nt understand what you just said!")
speak("I could'nt understand what you just said!")
@@ -31,7 +31,7 @@ def wiki_search():
"""
wiki_search = "What do you want me to search on Wikipedia? Please tell me the exact sentence or word to Search."
wiki_search_link = "https://en.wikipedia.org/wiki/"
-
+
print(wiki_search)
speak(wiki_search)
diff --git a/VoiceRepeater/__main__.py b/VoiceRepeater/__main__.py
index dc3e20a9739..6aedf3997a7 100644
--- a/VoiceRepeater/__main__.py
+++ b/VoiceRepeater/__main__.py
@@ -12,10 +12,10 @@
def callback(recognizer, audio):
- with open("spoken/" + str(len(speeches)) + ".wav", "wb") as file:
+ with open(f"spoken/{len(speeches)}.wav", "wb") as file:
file.write(audio.get_wav_data())
- playsound.playsound("spoken/" + str(len(speeches)) + ".wav")
+ playsound.playsound(f"spoken/{len(speeches)}.wav")
speeches.append(1)
print("____")
diff --git a/Weather Scrapper/weather.py b/Weather Scrapper/weather.py
index 55e8c59e4e7..0f327e0acaf 100644
--- a/Weather Scrapper/weather.py
+++ b/Weather Scrapper/weather.py
@@ -5,7 +5,7 @@
from bs4 import BeautifulSoup
city = input("Enter City")
-url = "https://www.wunderground.com/weather/in/" + city
+url = f"https://www.wunderground.com/weather/in/{city}"
try:
response = requests.get(url)
diff --git a/WeatherGUI.py b/WeatherGUI.py
index 19b42994b84..831817b4af0 100644
--- a/WeatherGUI.py
+++ b/WeatherGUI.py
@@ -22,7 +22,7 @@ def getWeather():
wind = soup.find("span", class_="_1Va1P undefined").text
pressure = soup.find("span", class_="_3olKd undefined").text
locationlabel.config(text=(location))
- templabel.config(text=temperature + "C")
+ templabel.config(text=f"{temperature}C")
WeatherText = (
"Sunrise : "
+ sunrise
diff --git a/WikipediaModule.py b/WikipediaModule.py
index dec5e2a5c0b..a98f2f543be 100644
--- a/WikipediaModule.py
+++ b/WikipediaModule.py
@@ -39,14 +39,10 @@ def wiki():
print("Page Id = ", pageId)
print(page.summary)
print("Page Link = ", url)
- # print "References : ",references
-
- pass
def fullPage(page):
- soup = BeautifulSoup(page.content, "lxml")
- return soup
+ return BeautifulSoup(page.content, "lxml")
def randomWiki():
@@ -80,9 +76,6 @@ def randomWiki():
print("Page Id = ", pageId)
print(page.summary)
print("Page Link = ", url)
- # print "References : ",references
-
- pass
# if __name__=="__main__":
diff --git a/Windows_Wallpaper_Script/wallpaper_extract.py b/Windows_Wallpaper_Script/wallpaper_extract.py
index 541462bdff4..4eef47444db 100644
--- a/Windows_Wallpaper_Script/wallpaper_extract.py
+++ b/Windows_Wallpaper_Script/wallpaper_extract.py
@@ -57,12 +57,11 @@ def change_ext():
# Look into all the files in the executing folder and change extension
for filename in os.listdir(w.file_urls["wall_dst"]):
base_file, ext = os.path.splitext(filename)
- if ext == "":
- if not os.path.isdir(w.file_urls["wall_dst"] + filename):
- os.rename(
- w.file_urls["wall_dst"] + filename,
- w.file_urls["wall_dst"] + filename + ".jpg",
- )
+ if ext == "" and not os.path.isdir(w.file_urls["wall_dst"] + filename):
+ os.rename(
+ w.file_urls["wall_dst"] + filename,
+ w.file_urls["wall_dst"] + filename + ".jpg",
+ )
# Remove all files Not having Wallpaper Resolution
@staticmethod
@@ -76,7 +75,7 @@ def extract_wall():
im = Image.open(w.file_urls["wall_dst"] + filename)
except IOError:
print("This isn't a picture.", filename)
- if list(im.size)[0] != 1920 and list(im.size)[0] != 1080:
+ if list(im.size)[0] not in [1920, 1080]:
im.close()
os.remove(w.file_urls["wall_dst"] + filename)
else:
diff --git a/Wordle/wordle.py b/Wordle/wordle.py
index ffed27a1838..3757a87cbca 100644
--- a/Wordle/wordle.py
+++ b/Wordle/wordle.py
@@ -22,6 +22,7 @@
new_dictionary.close()
"""
+
# import the library random
import random
@@ -37,10 +38,7 @@
dif_letters = list(set(word))
# Count how many times each letter occurs in the word
-count_letters = {}
-for i in dif_letters:
- count_letters[i] = word.count(i)
-
+count_letters = {i: word.count(i) for i in dif_letters}
# Set tries to 0
tries = 0
@@ -58,12 +56,12 @@
break
# Check if the word given by the user is 5 characters long
- if not len(user_inp) == 5:
+ if len(user_inp) != 5:
print("Your input must be 5 letters long")
continue
# Check if the word given by the user is in the dictionary
- if not user_inp in dictionary:
+ if user_inp not in dictionary:
print("Your word is not in the dictionary")
continue
@@ -104,13 +102,15 @@
# Check if letter is in the correct position
if user_inp[letter] == i:
return_answer += "G"
- else:
- if not user_inp[word.index(user_inp[letter])] == word[word.index(user_inp[letter])]:
- return_answer += "Y"
- else:
- answer_given = False
- do_not_add = True
+ elif (
+ user_inp[word.index(user_inp[letter])]
+ == word[word.index(user_inp[letter])]
+ ):
+ answer_given = False
+ do_not_add = True
+ else:
+ return_answer += "Y"
# Check if there has already been an answer returned
if not answer_given:
return_answer += "-"
diff --git a/XORcipher/XOR_cipher.py b/XORcipher/XOR_cipher.py
index 4d6bdb2190a..49d260fa335 100644
--- a/XORcipher/XOR_cipher.py
+++ b/XORcipher/XOR_cipher.py
@@ -45,13 +45,7 @@ def encrypt(self, content, key):
while key > 255:
key -= 255
- # This will be returned
- ans = []
-
- for ch in content:
- ans.append(chr(ord(ch) ^ key))
-
- return ans
+ return [chr(ord(ch) ^ key) for ch in content]
def decrypt(self, content, key):
"""
@@ -70,13 +64,7 @@ def decrypt(self, content, key):
while key > 255:
key -= 255
- # This will be returned
- ans = []
-
- for ch in content:
- ans.append(chr(ord(ch) ^ key))
-
- return ans
+ return [chr(ord(ch) ^ key) for ch in content]
def encrypt_string(self, content, key=0):
"""
@@ -95,13 +83,7 @@ def encrypt_string(self, content, key=0):
while key > 255:
key -= 255
- # This will be returned
- ans = ""
-
- for ch in content:
- ans += chr(ord(ch) ^ key)
-
- return ans
+ return "".join(chr(ord(ch) ^ key) for ch in content)
def decrypt_string(self, content, key=0):
"""
@@ -120,13 +102,7 @@ def decrypt_string(self, content, key=0):
while key > 255:
key -= 255
- # This will be returned
- ans = ""
-
- for ch in content:
- ans += chr(ord(ch) ^ key)
-
- return ans
+ return "".join(chr(ord(ch) ^ key) for ch in content)
def encrypt_file(self, file, key=0):
"""
diff --git a/Youtube Downloader With GUI/main.py b/Youtube Downloader With GUI/main.py
index 21d5c534ad5..7999318699d 100644
--- a/Youtube Downloader With GUI/main.py
+++ b/Youtube Downloader With GUI/main.py
@@ -36,7 +36,7 @@ def startDownload():
dfile_size = file_size
dfile_size /= 1000000
dfile_size = round(dfile_size, 2)
- label.config(text="Size: " + str(dfile_size) + " MB")
+ label.config(text=f"Size: {str(dfile_size)} MB")
label.pack(side=TOP, pady=10)
desc.config(
text=ob.title
diff --git a/addition.py b/addition.py
index 2a90bae31fb..38185b8823e 100644
--- a/addition.py
+++ b/addition.py
@@ -3,7 +3,7 @@
a = True
-while a == True:
+while a:
number1 = int(input("enter first number:"))
number2 = int(input("enter second number:"))
diff --git a/alexa_news_headlines.py b/alexa_news_headlines.py
index 7cb84b9fe09..2ac1b201fd9 100644
--- a/alexa_news_headlines.py
+++ b/alexa_news_headlines.py
@@ -23,7 +23,7 @@ def get_headlines():
unidecode.unidecode(listing["data"]["title"])
for listing in data["data"]["children"]
]
- titles = "... ".join([i for i in titles])
+ titles = "... ".join(list(titles))
return titles
@@ -41,7 +41,7 @@ def start_skill():
@ask.intent("YesIntent")
def share_headlines():
headlines = get_headlines()
- headline_msg = "The current world news headlines are {}".format(headlines)
+ headline_msg = f"The current world news headlines are {headlines}"
return statement(headline_msg)
diff --git a/area_of_square.py b/area_of_square.py
index 471e7c1cdb6..fb3e8402e1a 100644
--- a/area_of_square.py
+++ b/area_of_square.py
@@ -1,5 +1,5 @@
# Returns the area of the square with given sides
n = input("Enter the side of the square: ") # Side length should be given in input
side = float(n)
-area = side * side # calculate area
+area = side**2
print("Area of the given square is ", area)
diff --git a/async_downloader/async_downloader.py b/async_downloader/async_downloader.py
index 4f715048905..4aff1b937e8 100644
--- a/async_downloader/async_downloader.py
+++ b/async_downloader/async_downloader.py
@@ -71,19 +71,11 @@ async def download_file_by_url(url, session=None):
try:
async with session.get(url) as response:
if response.status == 404:
- print(
- "\t{} from {} : Failed : {}".format(
- file_name, url, "404 - Not found"
- )
- )
+ print(f"\t{file_name} from {url} : Failed : 404 - Not found")
return fail, url
- if not response.status == 200:
- print(
- "\t{} from {} : Failed : HTTP response {}".format(
- file_name, url, response.status
- )
- )
+ if response.status != 200:
+ print(f"\t{file_name} from {url} : Failed : HTTP response {response.status}")
return fail, url
data = await response.read()
@@ -92,17 +84,13 @@ async def download_file_by_url(url, session=None):
file.write(data)
except asyncio.TimeoutError:
- print("\t{} from {}: Failed : {}".format(file_name, url, "Timeout error"))
+ print(f"\t{file_name} from {url}: Failed : Timeout error")
except aiohttp.client_exceptions.ClientConnectionError:
- print(
- "\t{} from {}: Failed : {}".format(
- file_name, url, "Client connection error"
- )
- )
+ print(f"\t{file_name} from {url}: Failed : Client connection error")
else:
- print("\t{} from {} : Success".format(file_name, url))
+ print(f"\t{file_name} from {url} : Success")
fail = False
return fail, url
diff --git a/backup_automater_services.py b/backup_automater_services.py
index 21ec7aa0b62..f00e113ee9a 100644
--- a/backup_automater_services.py
+++ b/backup_automater_services.py
@@ -37,8 +37,7 @@
# the destination backup directory
for file_name in open(conffilename): # Walk through the configuration file
- fname = file_name.strip() # Strip out the blank lines from the configuration file
- if fname: # For the lines that are not blank
+ if fname := file_name.strip():
sourcefile = os.path.join(
sourcedir, fname
) # Get the name of the source files to backup
diff --git a/balance_parenthesis.py b/balance_parenthesis.py
index cd89ddcf6bd..e6e576a0b5b 100644
--- a/balance_parenthesis.py
+++ b/balance_parenthesis.py
@@ -19,14 +19,14 @@ def display(self):
def is_same(p1, p2):
- if p1 == "(" and p2 == ")":
- return True
- elif p1 == "[" and p2 == "]":
- return True
- elif p1 == "{" and p2 == "}":
- return True
- else:
- return False
+ return (
+ p1 == "("
+ and p2 == ")"
+ or p1 == "["
+ and p2 == "]"
+ or p1 == "{"
+ and p2 == "}"
+ )
def is_balanced(check_string):
@@ -37,19 +37,15 @@ def is_balanced(check_string):
paren = check_string[index]
if paren in "{[(":
s.push(paren)
+ elif s.is_empty():
+ is_bal = False
else:
- if s.is_empty():
+ top = s.pop()
+ if not is_same(top, paren):
is_bal = False
- else:
- top = s.pop()
- if not is_same(top, paren):
- is_bal = False
index += 1
- if s.is_empty() and is_bal:
- return True
- else:
- return False
+ return bool(s.is_empty() and is_bal)
print(is_balanced("[((())})]"))
diff --git a/bank_managment_system/backend.py b/bank_managment_system/backend.py
index e54027cf0a6..9b636fe2d13 100644
--- a/bank_managment_system/backend.py
+++ b/bank_managment_system/backend.py
@@ -21,10 +21,7 @@ def connect_database():
cur.execute("select acc_no from bank")
acc = cur.fetchall()
global acc_no
- if len(acc) == 0:
- acc_no = 1
- else:
- acc_no = int(acc[-1][0]) + 1
+ acc_no = 1 if len(acc) == 0 else int(acc[-1][0]) + 1
# check admin dtails in database
@@ -53,11 +50,9 @@ def check_employee(name, password):
print(data)
if len(data) == 0:
return False
- for i in range(len(data)):
- if data[i][0] == name and data[i][1] == password:
- return True
-
- return False
+ return any(
+ data[i][0] == name and data[i][1] == password for i in range(len(data))
+ )
# create customer details in database
@@ -77,10 +72,7 @@ def check_acc_no(acc_no):
cur.execute("select acc_no from bank")
list_acc_no = cur.fetchall()
- for i in range(len(list_acc_no)):
- if list_acc_no[i][0] == int(acc_no):
- return True
- return False
+ return any(list_acc_no[i][0] == int(acc_no) for i in range(len(list_acc_no)))
# get all details of a particular customer from database
@@ -121,12 +113,11 @@ def deduct_balance(new_money, acc_no):
bal = bal[0][0]
if bal < int(new_money):
return False
- else:
- new_bal = bal - int(new_money)
+ new_bal = bal - int(new_money)
- cur.execute("update bank set balance=? where acc_no=?", (new_bal, acc_no))
- conn.commit()
- return True
+ cur.execute("update bank set balance=? where acc_no=?", (new_bal, acc_no))
+ conn.commit()
+ return True
# gave balance of a particular account number from database
@@ -139,32 +130,28 @@ def check_balance(acc_no):
# update_name_in_bank_table
def update_name_in_bank_table(new_name, acc_no):
print(new_name)
- conn.execute("update bank set name='{}' where acc_no={}".format(new_name, acc_no))
+ conn.execute(f"update bank set name='{new_name}' where acc_no={acc_no}")
conn.commit()
# update_age_in_bank_table
def update_age_in_bank_table(new_name, acc_no):
print(new_name)
- conn.execute("update bank set age={} where acc_no={}".format(new_name, acc_no))
+ conn.execute(f"update bank set age={new_name} where acc_no={acc_no}")
conn.commit()
# update_address_in_bank_table
def update_address_in_bank_table(new_name, acc_no):
print(new_name)
- conn.execute(
- "update bank set address='{}' where acc_no={}".format(new_name, acc_no)
- )
+ conn.execute(f"update bank set address='{new_name}' where acc_no={acc_no}")
conn.commit()
# list of all customers in bank
def list_all_customers():
cur.execute("select * from bank")
- deatil = cur.fetchall()
-
- return deatil
+ return cur.fetchall()
# delete account from database
@@ -176,8 +163,7 @@ def delete_acc(acc_no):
# show employees detail from staff table
def show_employees():
cur.execute("select name, salary, position,pass from staff")
- detail = cur.fetchall()
- return detail
+ return cur.fetchall()
# return all money in bank
@@ -187,54 +173,47 @@ def all_money():
print(bal)
if len(bal) == 0:
return False
- else:
- total = 0
- for i in bal:
- total = total + i[0]
- return total
+ total = 0
+ for i in bal:
+ total = total + i[0]
+ return total
# return a list of all employees name
def show_employees_for_update():
cur.execute("select * from staff")
- detail = cur.fetchall()
- return detail
+ return cur.fetchall()
# update employee name from data base
def update_employee_name(new_name, old_name):
print(new_name, old_name)
- cur.execute("update staff set name='{}' where name='{}'".format(new_name, old_name))
+ cur.execute(f"update staff set name='{new_name}' where name='{old_name}'")
conn.commit()
def update_employee_password(new_pass, old_name):
print(new_pass, old_name)
- cur.execute("update staff set pass='{}' where name='{}'".format(new_pass, old_name))
+ cur.execute(f"update staff set pass='{new_pass}' where name='{old_name}'")
conn.commit()
def update_employee_salary(new_salary, old_name):
print(new_salary, old_name)
- cur.execute(
- "update staff set salary={} where name='{}'".format(new_salary, old_name)
- )
+ cur.execute(f"update staff set salary={new_salary} where name='{old_name}'")
conn.commit()
def update_employee_position(new_pos, old_name):
print(new_pos, old_name)
- cur.execute(
- "update staff set position='{}' where name='{}'".format(new_pos, old_name)
- )
+ cur.execute(f"update staff set position='{new_pos}' where name='{old_name}'")
conn.commit()
# get name and balance from bank of a particular account number
def get_detail(acc_no):
cur.execute("select name, balance from bank where acc_no=?", (acc_no))
- details = cur.fetchall()
- return details
+ return cur.fetchall()
def check_name_in_staff(name):
@@ -242,7 +221,4 @@ def check_name_in_staff(name):
cur.execute("select name from staff")
details = cur.fetchall()
- for i in details:
- if i[0] == name:
- return True
- return False
+ return any(i[0] == name for i in details)
diff --git a/bank_managment_system/frontend.py b/bank_managment_system/frontend.py
index c885c2b37c3..40652ee5be9 100644
--- a/bank_managment_system/frontend.py
+++ b/bank_managment_system/frontend.py
@@ -9,8 +9,7 @@
# A function for check that acc_no is integer or not
def check_string_in_account_no(check_acc_no):
- r = check_acc_no.isdigit()
- return r
+ return check_acc_no.isdigit()
# all buttons of page2
diff --git a/batch_file_rename.py b/batch_file_rename.py
index b3a4d75e6d5..24f2450cd40 100644
--- a/batch_file_rename.py
+++ b/batch_file_rename.py
@@ -69,11 +69,11 @@ def main():
# Set the variable old_ext with the second argument passed
old_ext = args["old_ext"][0]
if old_ext and old_ext[0] != ".":
- old_ext = "." + old_ext
+ old_ext = f".{old_ext}"
# Set the variable new_ext with the third argument passed
new_ext = args["new_ext"][0]
if new_ext and new_ext[0] != ".":
- new_ext = "." + new_ext
+ new_ext = f".{new_ext}"
batch_rename(work_dir, old_ext, new_ext)
diff --git a/binary_search_tree.py b/binary_search_tree.py
index 327c45c722d..ce5717f8294 100755
--- a/binary_search_tree.py
+++ b/binary_search_tree.py
@@ -57,9 +57,7 @@ def search(self, val, to_delete=False):
prev = current
current = current.right
elif current.info == val:
- if not to_delete:
- return "Match Found"
- return prev
+ return prev if to_delete else "Match Found"
else:
break
if not to_delete:
@@ -69,76 +67,70 @@ def search(self, val, to_delete=False):
def delete(self, val):
prev = self.search(val, True)
# Check if node exists
- if prev is not None:
- # Check if node is the Root node
- if prev == -1:
- temp = self.root.left
- prev2 = None
- while temp.right:
+ if prev is None:
+ print("Node doesn't exists")
+
+ elif prev == -1:
+ temp = self.root.left
+ prev2 = None
+ while temp.right:
+ prev2 = temp
+ temp = temp.right
+ if prev2 is None:
+ self.root.left = temp.left
+ else:
+ prev2.right = None
+ self.root.info = temp.info
+ print("Deleted Root ", val)
+ elif prev.left and prev.left.info == val:
+ # Check if node is leaf node
+ if prev.left.left is prev.left.right:
+ prev.left = None
+ print("Deleted Node ", val)
+ # Check if node has child at left and None at right
+ elif prev.left.left and prev.left.right is None:
+ prev.left = prev.left.left
+ print("Deleted Node ", val)
+ # Check if node has child at right and None at left
+ elif prev.left.left is None and prev.left.right:
+ prev.left = prev.left.right
+ print("Deleted Node ", val)
+ # Here node to be deleted has 2 children
+ elif prev.left.left and prev.left.right:
+ temp = prev.left
+ while temp.right is not None:
prev2 = temp
temp = temp.right
- if prev2 is None:
- self.root.left = temp.left
- self.root.info = temp.info
- else:
- prev2.right = None
- self.root.info = temp.info
- print("Deleted Root ", val)
- # Check if node is to left of its parent
- elif prev.left and prev.left.info == val:
- # Check if node is leaf node
- if prev.left.left is prev.left.right:
- prev.left = None
- print("Deleted Node ", val)
- # Check if node has child at left and None at right
- elif prev.left.left and prev.left.right is None:
- prev.left = prev.left.left
- print("Deleted Node ", val)
- # Check if node has child at right and None at left
- elif prev.left.left is None and prev.left.right:
- prev.left = prev.left.right
- print("Deleted Node ", val)
- # Here node to be deleted has 2 children
- elif prev.left.left and prev.left.right:
- temp = prev.left
- while temp.right is not None:
- prev2 = temp
- temp = temp.right
- prev2.right = None
- prev.left.info = temp.info
- print("Deleted Node ", val)
- else:
- print("Error Left")
-
- # Check if node is to right of its parent
- elif prev.right.info == val:
- flag = 0
- # Check is node is a leaf node
- if prev.right.left is prev.right.right:
- prev.right = None
- flag = 1
- print("Deleted Node ", val)
+ prev2.right = None
+ prev.left.info = temp.info
+ print("Deleted Node ", val)
+ else:
+ print("Error Left")
+
+ elif prev.right.info == val:
+ flag = 0
+ # Check is node is a leaf node
+ if prev.right.left is prev.right.right:
+ prev.right = None
+ flag = 1
+ print("Deleted Node ", val)
# Check if node has left child at None at right
- if prev.right and prev.right.left and prev.right.right is None:
- prev.right = prev.right.left
- print("Deleted Node ", val)
- # Check if node has right child at None at left
- elif prev.right and prev.right.left is None and prev.right.right:
- prev.right = prev.right.right
- print("Deleted Node ", val)
- elif prev.right and prev.right.left and prev.right.right:
- temp = prev.right
- while temp.left is not None:
- prev2 = temp
- temp = temp.left
- prev2.left = None
- prev.right.info = temp.info
- print("Deleted Node ", val)
- else:
- if flag == 0:
- print("Error")
- else:
- print("Node doesn't exists")
+ if prev.right and prev.right.left and prev.right.right is None:
+ prev.right = prev.right.left
+ print("Deleted Node ", val)
+ elif prev.right and prev.right.left is None and prev.right.right:
+ prev.right = prev.right.right
+ print("Deleted Node ", val)
+ elif prev.right and prev.right.left and prev.right.right:
+ temp = prev.right
+ while temp.left is not None:
+ prev2 = temp
+ temp = temp.left
+ prev2.left = None
+ prev.right.info = temp.info
+ print("Deleted Node ", val)
+ elif flag == 0:
+ print("Error")
def __str__(self):
return "Not able to print tree yet"
diff --git a/binod.py b/binod.py
index 2bee72de9d6..a81ac0c1faf 100644
--- a/binod.py
+++ b/binod.py
@@ -24,11 +24,10 @@ def checkBinod(file): # Trying to find Binod In File Insted Of Manohar Ka Kotha
with open(file, "r") as f:
# master
fileContent = f.read()
- if "binod" in fileContent.lower():
- print(f"**************Congratulations Binod found in {f}********************")
- return True
- else:
+ if "binod" not in fileContent.lower():
return False
+ print(f"**************Congratulations Binod found in {f}********************")
+ return True
if __name__ == "__main__":
diff --git a/birthdays.py b/birthdays.py
index 19ad2b001a2..13e38e550ab 100644
--- a/birthdays.py
+++ b/birthdays.py
@@ -6,9 +6,9 @@
if name == '':
break
if name in birthdays:
- print(birthdays[name] + ' is the birthday of ' + name)
+ print(f'{birthdays[name]} is the birthday of {name}')
else:
- print('I do not have birthday information for ' + name)
+ print(f'I do not have birthday information for {name}')
print('What is their birthday?')
bday = input()
birthdays[name] = bday
diff --git a/blackJackGUI.py b/blackJackGUI.py
index a67e6e06717..cd23811797d 100644
--- a/blackJackGUI.py
+++ b/blackJackGUI.py
@@ -65,9 +65,9 @@ def draw(self, canvas, pos):
def string_list_join(string, string_list):
- ans = string + " contains "
+ ans = f"{string} contains "
for i in range(len(string_list)):
- ans += str(string_list[i]) + " "
+ ans += f"{str(string_list[i])} "
return ans
@@ -91,10 +91,7 @@ def get_value(self):
var.append(card[1])
if "A" not in var:
return self.hand_value
- if self.hand_value + 10 <= 21:
- return self.hand_value + 10
- else:
- return self.hand_value
+ return self.hand_value + 10 if self.hand_value <= 11 else self.hand_value
def draw(self, canvas, pos):
for card in self.hand:
@@ -123,7 +120,7 @@ def deal():
player_card = Hand()
dealer_card = Hand()
deck = Deck()
- for i in range(2):
+ for _ in range(2):
player_card.add_card(deck.deal_card())
dealer_card.add_card(deck.deal_card())
diff --git a/blackjack.py b/blackjack.py
index 1cdac41bc43..6bee70b7ff7 100644
--- a/blackjack.py
+++ b/blackjack.py
@@ -47,9 +47,9 @@
print("***********************Dealer is the Winner !!******************")
exit()
-if sum(d_cards) == 21 and sum(p_cards) == 21:
- print("*****************The match is tie !!*************************")
- exit()
+ if sum(p_cards) == 21:
+ print("*****************The match is tie !!*************************")
+ exit()
def dealer_choice():
@@ -58,20 +58,17 @@ def dealer_choice():
random.shuffle(deck)
d_cards.append(deck.pop())
- print("Dealer has total " + str(sum(d_cards)) + "with the cards ", d_cards)
+ print(f"Dealer has total {str(sum(d_cards))}with the cards ", d_cards)
if sum(p_cards) == sum(d_cards):
print("***************The match is tie !!****************")
exit()
if sum(d_cards) == 21:
- if sum(p_cards) < 21:
+ if sum(p_cards) < 21 or sum(p_cards) != 21:
print("***********************Dealer is the Winner !!******************")
- elif sum(p_cards) == 21:
- print("********************There is tie !!**************************")
else:
- print("***********************Dealer is the Winner !!******************")
-
+ print("********************There is tie !!**************************")
elif sum(d_cards) < 21:
if sum(p_cards) < 21 and sum(p_cards) < sum(d_cards):
print("***********************Dealer is the Winner !!******************")
@@ -80,13 +77,10 @@ def dealer_choice():
if sum(p_cards) < 21 and sum(p_cards) > sum(d_cards):
print("**********************Player is winner !!**********************")
+ elif sum(p_cards) < 21 or sum(p_cards) == 21:
+ print("**********************Player is winner !!**********************")
else:
- if sum(p_cards) < 21:
- print("**********************Player is winner !!**********************")
- elif sum(p_cards) == 21:
- print("**********************Player is winner !!**********************")
- else:
- print("***********************Dealer is the Winner !!******************")
+ print("***********************Dealer is the Winner !!******************")
while sum(p_cards) < 21:
@@ -95,7 +89,7 @@ def dealer_choice():
if k == 1:
random.shuffle(deck)
p_cards.append(deck.pop())
- print("You have a total of " + str(sum(p_cards)) + " with the cards ", p_cards)
+ print(f"You have a total of {str(sum(p_cards))} with the cards ", p_cards)
if sum(p_cards) > 21:
print("*************You are BUSTED !*************\n Dealer Wins !!")
if sum(p_cards) == 21:
diff --git a/bookstore_manangement_system.py b/bookstore_manangement_system.py
index 7ae31cb195b..b7d93cd41f8 100644
--- a/bookstore_manangement_system.py
+++ b/bookstore_manangement_system.py
@@ -54,12 +54,7 @@ def login():
for y in data2:
- if y[1] == user_name and y[2] == passw:
-
- pass
-
- else:
-
+ if y[1] != user_name or y[2] != passw:
separator()
print(" Username or Password is Incorrect Try Again")
@@ -69,16 +64,11 @@ def login():
user_name = input(" USER NAME --- ")
passw = input(" PASSWORD --- ")
- if y[1] == user_name and y[2] == passw:
-
- pass
-
- else:
-
- separator()
+ if y[1] != user_name or y[2] != passw:
+ separator()
- print(" Username or Password is Again Incorrect")
- exit()
+ print(" Username or Password is Again Incorrect")
+ exit()
def ViewAll():
diff --git a/brickout-game/brickout-game.py b/brickout-game/brickout-game.py
index c212be6a634..5a314bbce36 100644
--- a/brickout-game/brickout-game.py
+++ b/brickout-game/brickout-game.py
@@ -199,16 +199,13 @@ def collide(self, ball):
ballXVel = ball.getXVel()
ballYVel = ball.getYVel()
- if (
+ return (
(ballX + ball._radius) >= brickX
and (ballX + ball._radius) <= (brickX + brickW)
) and (
(ballY - ball._radius) >= brickY
and (ballY - ball._radius) <= (brickY + brickH)
- ):
- return True
- else:
- return False
+ )
"""
@@ -228,8 +225,8 @@ def __init__(self, screen, x, y, width, height):
X = x
Y = y
- for i in range(3):
- for j in range(4):
+ for _ in range(3):
+ for _ in range(4):
self._bricks.append(Brick(screen, width, height, X, Y))
X += width + (width / 7.0)
Y += height + (height / 7.0)
@@ -279,10 +276,7 @@ def collide(self, ball):
check collisions between the ball and
any of the bricks.
"""
- for brick in self._bricks:
- if brick.collide(ball):
- return True
- return False
+ return any(brick.collide(ball) for brick in self._bricks)
# The game objects ball, paddle and brick wall
@@ -318,7 +312,7 @@ def collide(self, ball):
textsurfaceGameOver = mgGameOver.render("Game Over!", False, (0, 0, 0))
textsurfaceWin = mgWin.render("You win!", False, (0, 0, 0))
-textsurfaceScore = mgScore.render("score: " + str(score), False, (0, 0, 0))
+textsurfaceScore = mgScore.render(f"score: {score}", False, (0, 0, 0))
# -------- Main Program Loop -----------
while not done:
@@ -352,7 +346,7 @@ def collide(self, ball):
# for counting and displaying the score
if brickWall.collide(ball):
score += 10
- textsurfaceScore = mgScore.render("score: " + str(score), False, (0, 0, 0))
+ textsurfaceScore = mgScore.render(f"score: {str(score)}", False, (0, 0, 0))
screen.blit(textsurfaceScore, (300, 0))
# after scoring. because hit bricks are removed in the update-method
@@ -370,15 +364,14 @@ def collide(self, ball):
ball.draw()
- else: # game isn't running.
- if isGameOver: # player lose
- screen.blit(textsurfaceGameOver, (0, 0))
- textsurfaceScore = mgScore.render("score: " + str(score), False, (0, 0, 0))
- screen.blit(textsurfaceScore, (300, 0))
- elif brickWall.hasWin(): # player win
- screen.blit(textsurfaceWin, (0, 0))
- textsurfaceScore = mgScore.render("score: " + str(score), False, (0, 0, 0))
- screen.blit(textsurfaceScore, (300, 0))
+ elif isGameOver: # player lose
+ screen.blit(textsurfaceGameOver, (0, 0))
+ textsurfaceScore = mgScore.render(f"score: {str(score)}", False, (0, 0, 0))
+ screen.blit(textsurfaceScore, (300, 0))
+ elif brickWall.hasWin(): # player win
+ screen.blit(textsurfaceWin, (0, 0))
+ textsurfaceScore = mgScore.render(f"score: {str(score)}", False, (0, 0, 0))
+ screen.blit(textsurfaceScore, (300, 0))
# --- Go ahead and update the screen with what we've drawn.
pygame.display.flip()
diff --git a/calc_area.py b/calc_area.py
index 7f35917c746..4439a5354b0 100644
--- a/calc_area.py
+++ b/calc_area.py
@@ -11,29 +11,29 @@ def main():
)
if shape == 1:
side = float(input("Enter length of side: "))
- print("Area of square = " + str(side ** 2))
+ print(f"Area of square = {str(side**2)}")
elif shape == 2:
l = float(input("Enter length: "))
b = float(input("Enter breadth: "))
- print("Area of rectangle = " + str(l * b))
+ print(f"Area of rectangle = {str(l * b)}")
elif shape == 3:
r = float(input("Enter radius: "))
- print("Area of circle = " + str(m.pi * r * r))
+ print(f"Area of circle = {str(m.pi * r * r)}")
elif shape == 4:
base = float(input("Enter base: "))
h = float(input("Enter height: "))
- print("Area of rectangle = " + str(0.5 * base * h))
+ print(f"Area of rectangle = {str(0.5 * base * h)}")
elif shape == 5:
r = float(input("Enter radius: "))
h = float(input("Enter height: "))
- print("Area of cylinder = " + str(m.pow(r, 2) * h * m.pi))
+ print(f"Area of cylinder = {str(m.pow(r, 2) * h * m.pi)}")
elif shape == 6:
r = float(input("Enter radius: "))
h = float(input("Enter height: "))
- print("Area of cone = " + str(m.pow(r, 2) * h * 1 / 3 * m.pi))
+ print(f"Area of cone = {str(m.pow(r, 2) * h * 1 / 3 * m.pi)}")
elif shape == 7:
r = float(input("Enter radius: "))
- print("Area of sphere = " + str(m.pow(r, 3) * 4 / 3 * m.pi))
+ print(f"Area of sphere = {str(m.pow(r, 3) * 4 / 3 * m.pi)}")
else:
print("You have selected wrong choice.")
diff --git a/calculator-gui.py b/calculator-gui.py
index e0a0ea5a28d..3a0c6b0ec6d 100755
--- a/calculator-gui.py
+++ b/calculator-gui.py
@@ -396,9 +396,7 @@ def geometry_settings(self):
_my_height = 350
_x = int(_com_width / 2 - _my_width / 2)
_y = int(_com_height / 2 - _my_height / 2)
- geo_string = (
- str(_my_width) + "x" + str(_my_height) + "+" + str(_x) + "+" + str(_y)
- )
+ geo_string = f"{_my_width}x{_my_height}+{_x}+{_y}"
# ----- Setting Now -----
self.geometry(geo_string)
self.resizable(width=False, height=False)
diff --git a/calculator.py b/calculator.py
index b12986aa7e6..87e616fe93e 100644
--- a/calculator.py
+++ b/calculator.py
@@ -66,7 +66,7 @@ def calc(term):
for func in functions:
if func in term:
- withmath = "math." + func
+ withmath = f"math.{func}"
term = term.replace(func, withmath)
try:
@@ -114,19 +114,14 @@ def main():
+ "- 12mod3\n\nEnter quit to exit"
)
- if sys.version_info.major >= 3:
- while True:
+ while True:
+ if sys.version_info.major >= 3:
k = input("\nWhat is ")
- if k == "quit":
- break
- result(k)
-
- else:
- while True:
+ else:
k = raw_input("\nWhat is ")
- if k == "quit":
- break
- result(k)
+ if k == "quit":
+ break
+ result(k)
if __name__ == "__main__":
diff --git a/changemac.py b/changemac.py
index b5e86ceae09..c020993c378 100644
--- a/changemac.py
+++ b/changemac.py
@@ -38,8 +38,8 @@ def retrandmac(mac):
infname = infname[:6]
infname = infname.decode("utf-8")
# GETTING MAC Address from /sys/class/net/wlan0/address directory
-cmdgetmac = "cat /sys/class/net/" + infname + "/address"
-crrntmac = cret("cat /sys/class/net/" + infname + "/address")
+cmdgetmac = f"cat /sys/class/net/{infname}/address"
+crrntmac = cret(f"cat /sys/class/net/{infname}/address")
crrntmac = crrntmac.decode("utf-8")
print(
"Your Current mac address = "
@@ -57,13 +57,13 @@ def retrandmac(mac):
# first turn off wifi
cret("nmcli radio wifi off")
- changemaccmd = "sudo ip link set dev " + infname + " address " + newmac
+ changemaccmd = f"sudo ip link set dev {infname} address {newmac}"
# executing command with new mac address
cret(changemaccmd)
# turning on wifi
cret("nmcli radio wifi on")
# GETTING MAC Address from /sys/class/net/wlan0/address directory
- cr = cret("cat /sys/class/net/" + infname + "/address")
+ cr = cret(f"cat /sys/class/net/{infname}/address")
cr = cr.decode("utf-8")
print("\nNow Your Current mac address = " + cr)
@@ -73,12 +73,12 @@ def retrandmac(mac):
genmac = retrandmac(randmac())
print("Please wait generating new mac address.....................")
cret("nmcli radio wifi off")
- changemaccmd = "sudo ip link set dev " + infname + " address " + genmac
+ changemaccmd = f"sudo ip link set dev {infname} address {genmac}"
cret(changemaccmd)
cret("nmcli radio wifi on")
- cr = cret("cat /sys/class/net/" + infname + "/address")
+ cr = cret(f"cat /sys/class/net/{infname}/address")
cr = cr.decode("utf-8")
- print("Now Your Current mac address = " + cr)
+ print(f"Now Your Current mac address = {cr}")
else:
print("You Have Selected wrong Option")
diff --git a/chaos.py b/chaos.py
index 520f3d44512..26ba7c55481 100644
--- a/chaos.py
+++ b/chaos.py
@@ -7,14 +7,14 @@ def main():
while True:
try:
x = float((input("Enter a number between 0 and 1: ")))
- if 0 < x and x < 1:
+ if 0 < x < 1:
break
else:
print("Please enter correct number")
except Exception as e:
print("Please enter correct number")
- for i in range(10):
+ for _ in range(10):
x = 3.9 * x * (1 - x)
print(x)
diff --git a/check_file.py b/check_file.py
index 65da90b2f17..d6138ffadd1 100644
--- a/check_file.py
+++ b/check_file.py
@@ -42,7 +42,7 @@ def main():
# Iterate for each filename passed in command line argument
for filename in filteredfilenames_1:
if not os.path.isfile(filename): # Check the File exists
- print("[-] " + filename + " does not exist.")
+ print(f"[-] {filename} does not exist.")
filteredfilenames_2.remove(
filename
) # remove non existing files from fileNames list
@@ -50,7 +50,7 @@ def main():
# Check you can read the file
if not os.access(filename, os.R_OK):
- print("[-] " + filename + " access denied")
+ print(f"[-] {filename} access denied")
# remove non readable fileNames
filteredfilenames_2.remove(filename)
continue
@@ -58,7 +58,7 @@ def main():
# Read the content of each file that both exists and is readable
for filename in filteredfilenames_2:
# Display Message and read the file contents
- print("[+] Reading from : " + filename)
+ print(f"[+] Reading from : {filename}")
readfile(filename)
else:
diff --git a/check_for_sqlite_files.py b/check_for_sqlite_files.py
index 556d348f8af..7cdbe97f701 100644
--- a/check_for_sqlite_files.py
+++ b/check_for_sqlite_files.py
@@ -18,17 +18,11 @@ def isSQLite3(filename):
if not isfile(filename):
return False
- if getsize(filename) < 100: # SQLite database file header is 100 bytes
+ if getsize(filename) < 100:
return False
- else:
- fd = open(filename, "rb")
+ with open(filename, "rb") as fd:
header = fd.read(100)
- fd.close()
-
- if header[0:16] == "SQLite format 3\000":
- return True
- else:
- return False
+ return header[:16] == "SQLite format 3\000"
log = open("sqlite_audit.txt", "w")
diff --git a/check_internet_con.py b/check_internet_con.py
index d6ab0a615db..66c965b6bf4 100644
--- a/check_internet_con.py
+++ b/check_internet_con.py
@@ -15,8 +15,8 @@ def checkInternetConnectivity():
print(url)
protocols = ["https://", "http://"]
if not any(x for x in protocols if x in url):
- url = "https://" + url
- print("URL:" + url)
+ url = f"https://{url}"
+ print(f"URL:{url}")
except BaseException:
url = "https://google.com"
try:
@@ -24,7 +24,7 @@ def checkInternetConnectivity():
print(f'Connection to "{url}" is working')
except URLError as E:
- print("Connection error:%s" % E.reason)
+ print(f"Connection error:{E.reason}")
checkInternetConnectivity()
diff --git a/check_prime.py b/check_prime.py
index 070ce9e2bff..e3809d2c1d9 100644
--- a/check_prime.py
+++ b/check_prime.py
@@ -12,29 +12,19 @@ def is_prime_a(n):
if n < 2:
return False
sqrt_n = int(sqrt(n))
- for i in range(2, sqrt_n + 1):
- if n % i == 0:
- return False
- return True
+ return all(n % i != 0 for i in range(2, sqrt_n + 1))
def is_prime_b(n):
if n > 1:
- if n == 2:
- return True
- else:
+ if n != 2:
for i in range(2, n):
if n % i == 0:
return False
- return True
+ return True
return False
def is_prime_c(n):
- divisible = 0
- for i in range(1, n + 1):
- if n % i == 0:
- divisible += 1
- if divisible == 2:
- return True
- return False
+ divisible = sum(n % i == 0 for i in range(1, n + 1))
+ return divisible == 2
diff --git a/classicIndianCardMatch.py b/classicIndianCardMatch.py
index 6c859fb8f4d..3d727bb009c 100644
--- a/classicIndianCardMatch.py
+++ b/classicIndianCardMatch.py
@@ -73,7 +73,7 @@ def __str__(self):
print("....decks have been combined and shuffled...\n")
print("------------------------------------------\n")
input("Enter a key to cut the deck..\n")
-player1 = combinedDeck[0:52]
+player1 = combinedDeck[:52]
player2 = combinedDeck[52:]
print(
"Deck has been split into two and Human get a half and computer gets the other...\n"
@@ -93,11 +93,11 @@ def __str__(self):
len(player1) != 0 and len(player2) != 0
): # this needs a fix as it goes on an infinite loop on a success.
switchPlayer = True
- while switchPlayer == True:
+ while switchPlayer:
for card in range(len(player1)):
input("Enter any key to place a card!!!\n")
currentPlayer1Card = player1[card].rank
- print("Your current card's rank: {}".format(currentPlayer1Card))
+ print(f"Your current card's rank: {currentPlayer1Card}")
centerPile.append(player1[card])
player1.pop(card)
switchPlayer = False
@@ -108,12 +108,12 @@ def __str__(self):
)
break
while switchPlayer == False:
+ switchPlayer = True
for card in range(len(player2)):
currentPlayer2Card = player2[card].rank
- print("Computer's current card's rank: {}".format(currentPlayer2Card))
+ print(f"Computer's current card's rank: {currentPlayer2Card}")
centerPile.append(player2[card])
player2.pop(card)
- switchPlayer = True
if currentPlayer1Card == currentPlayer2Card:
player2 = player2 + centerPile
print("Computer got a match and takes all the cards from center pile..")
@@ -121,4 +121,4 @@ def __str__(self):
print("GAME OVER!!!\n")
-print("Human has {} cards and computer has {}..".format(len(player1), len(player2)))
+print(f"Human has {len(player1)} cards and computer has {len(player2)}..")
diff --git a/consonant.py b/consonant.py
index 5138b47d1ca..2a33b65252d 100644
--- a/consonant.py
+++ b/consonant.py
@@ -14,13 +14,7 @@
def count_con(string):
- c = 0
- for i in range(len(string)):
- if (
- string[i] not in string_check
- ): # counter increases if the character is not vowel
- c += 1
- return c
+ return sum(string[i] not in string_check for i in range(len(string)))
counter = count_con(my_string)
diff --git a/conversion.py b/conversion.py
index 022035234f5..432b06ae435 100644
--- a/conversion.py
+++ b/conversion.py
@@ -3,15 +3,8 @@
def convert(s):
- # initialization of string to ""
- new = ""
-
- # traverse in the string
- for x in s:
- new += x
-
- # return string
- return new
+ # return string
+ return "".join(s)
# driver code
diff --git a/convert_time.py b/convert_time.py
index d7ff1c9f697..a9f4cfb7a0c 100644
--- a/convert_time.py
+++ b/convert_time.py
@@ -7,14 +7,11 @@ def convert_time(input_str):
# Checking if last two elements of time
# is AM and first two elements are 12
if input_str[-2:] == "AM" and input_str[:2] == "12":
- return "00" + input_str[2:-2]
+ return f"00{input_str[2:-2]}"
- # remove the AM
elif input_str[-2:] == "AM":
return input_str[:-2]
- # Checking if last two elements of time
- # is PM and first two elements are 12
elif input_str[-2:] == "PM" and input_str[:2] == "12":
return input_str[:-2]
diff --git a/coronacases.py b/coronacases.py
index b06d15ca97f..84f42d2f42a 100644
--- a/coronacases.py
+++ b/coronacases.py
@@ -84,14 +84,13 @@ def choices():
if choice == "1":
world()
sleep(1)
- choices()
elif choice == "2":
indiac()
sleep(1)
- choices()
else:
print("\nYou Have Entered Something Wrong, Please Enter Again")
- choices()
+
+ choices()
choices()
diff --git a/currency converter/main.py b/currency converter/main.py
index a75a047c724..306d4a15cb6 100644
--- a/currency converter/main.py
+++ b/currency converter/main.py
@@ -34,7 +34,7 @@ def getVal(cont1, cont2):
window.dropDown1.addItem("Select")
window.dropDown2.addItem("Select")
-for i in f.readlines():
+for i in f:
window.dropDown1.addItem(i)
window.dropDown2.addItem(i)
intOnly = QDoubleValidator()
diff --git a/daily_checks.py b/daily_checks.py
index 337f8d5aebe..672ce24e203 100644
--- a/daily_checks.py
+++ b/daily_checks.py
@@ -43,7 +43,7 @@ def putty_sessions(conffilename): # Function to load the putty sessions I need
# Open the file server_list.txt, loop through reading each line
# 1.1 -Changed - 1.3 Changed name to use variable conffilename
for server in open(conffilename):
- subprocess.Popen(("putty -load " + server)) # Open the PuTTY sessions - 1.1
+ subprocess.Popen(f"putty -load {server}")
def rdp_sessions():
diff --git a/date-timeclient.py b/date-timeclient.py
index 1e6f4c7b914..bc970b5c6f5 100644
--- a/date-timeclient.py
+++ b/date-timeclient.py
@@ -4,4 +4,4 @@
soc.connect((socket.gethostname(), 2905))
recmsg = soc.recv(1024)
soc.close()
-print("The time got from the server is %s" % recmsg.decode("ascii"))
+print(f'The time got from the server is {recmsg.decode("ascii")}')
diff --git a/date-timeserver.py b/date-timeserver.py
index c0d114c02f4..c316ff237d1 100644
--- a/date-timeserver.py
+++ b/date-timeserver.py
@@ -8,7 +8,7 @@
clientsocket, addr = soc.accept()
- print("estavlishes a connection from %s" % str(addr))
+ print(f"estavlishes a connection from {str(addr)}")
currentTime = time.ctime(time.time()) + "\r\n"
clientsocket.send(currentTime.encode("ascii"))
clientsocket.close()
diff --git a/days_from_date.py b/days_from_date.py
index 3a166679607..a062425afe3 100644
--- a/days_from_date.py
+++ b/days_from_date.py
@@ -29,7 +29,7 @@ def find_day(date):
def printt():
user_input = user_input1.get()
date = process_date(user_input)
- c = "Day on " + user_input + " is " + find_day(date)
+ c = f"Day on {user_input} is {find_day(date)}"
label2 = tk.Label(root, text=c, font=("Times new roman", 20), fg="black").place(
x=20, y=200
)
diff --git a/diceV2_dynamic.py b/diceV2_dynamic.py
index a0dcbcfbc61..44cf4589849 100644
--- a/diceV2_dynamic.py
+++ b/diceV2_dynamic.py
@@ -26,14 +26,13 @@ def roll(self):
# This implementation can be improved greatly of course.
def checkInput(sides):
try:
- if int(sides) != 0:
- if (
- float(sides) % int(sides) == 0
- ): # excludes the possibility of inputted floats being rounded.
- return int(sides)
- else:
+ if int(sides) == 0:
return int(sides)
+ if (
+ float(sides) % int(sides) == 0
+ ): # excludes the possibility of inputted floats being rounded.
+ return int(sides)
except ValueError:
print("Invalid input!")
return None
@@ -46,11 +45,10 @@ def pickNumber(item, question_string, lower_limit):
item = input(question_string)
item = checkInput(item)
if type(item) == int:
- if item <= lower_limit:
- print("Input too low!")
- continue
- else:
+ if item > lower_limit:
return item
+ print("Input too low!")
+ continue
# Main-function of the program that sets up the dices for the user as they want them.
@@ -66,7 +64,7 @@ def getDices():
diceAmount, "How many dices will do you want?: ", diceLowerLimit
)
- for i in range(0, diceAmount):
+ for _ in range(diceAmount):
d = Dice()
d.setSides(sides)
dices.append(d)
diff --git a/diction.py b/diction.py
index 8fc071cb6b8..83ec611eede 100644
--- a/diction.py
+++ b/diction.py
@@ -45,7 +45,7 @@ def translate(word):
speak(d)
elif len(get_close_matches(word, data.keys())) > 0:
x = get_close_matches(word, data.keys())[0]
- speak("Did you mean " + x + " instead, respond with Yes or No.")
+ speak(f"Did you mean {x} instead, respond with Yes or No.")
ans = takeCommand().lower()
if "yes" in ans:
speak("ok " + "It means.." + data[x])
diff --git a/dir_test.py b/dir_test.py
index 992d5924a88..38f468053d0 100644
--- a/dir_test.py
+++ b/dir_test.py
@@ -23,7 +23,7 @@ def main():
if os.path.exists(CheckDir): # Checks if the dir exists
print("The directory exists")
else:
- print("No directory found for " + CheckDir) # Output if no directory
+ print(f"No directory found for {CheckDir}")
print()
option = input("Would you like this directory create? y/n: ")
if option == "n":
@@ -31,7 +31,7 @@ def main():
exit()
if option == "y":
os.makedirs(CheckDir) # Creates a new dir for the given name
- print("Directory created for " + CheckDir)
+ print(f"Directory created for {CheckDir}")
else:
print("Not an option. Exiting")
exit()
diff --git a/divisors_of_a_number.py b/divisors_of_a_number.py
index 326378b177f..06b697ee639 100644
--- a/divisors_of_a_number.py
+++ b/divisors_of_a_number.py
@@ -16,5 +16,5 @@
print('\nthe number ' + number_to_divide + ' can be divided by:')
for item in list_number_divided :
print(f'{item}')
-if len(list_number_divided) <= 2 :
- print(number_to_divide + ' is a prime number')
\ No newline at end of file
+if len(list_number_divided) <= 2:
+ print(f'{number_to_divide} is a prime number')
\ No newline at end of file
diff --git a/email id dictionary/dict1.py b/email id dictionary/dict1.py
index 26c26be8d8d..746c7297bc9 100644
--- a/email id dictionary/dict1.py
+++ b/email id dictionary/dict1.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
-counts = dict()
-mails = list()
+counts = {}
+mails = []
fname = input("Enter file name:")
fh = open(fname)
for line in fh:
diff --git a/encrypter-decrypter-gui.py b/encrypter-decrypter-gui.py
index ea46ea95bb9..95b17a8c440 100644
--- a/encrypter-decrypter-gui.py
+++ b/encrypter-decrypter-gui.py
@@ -23,7 +23,7 @@ def geometry_settings(self):
# ----- Now Getting X and Y Coordinates
_x = int(_com_scr_w / 2 - _my_w / 2)
_y = int(_com_scr_h / 2 - _my_h / 2)
- _geo_string = str(_my_w) + "x" + str(_my_h) + "+" + str(_x) + "+" + str(_y)
+ _geo_string = f"{_my_w}x{_my_h}+{_x}+{_y}"
self.geometry(_geo_string)
# ----- Geometry Setting Completed Now Disabling Resize Screen Button -----
self.resizable(width=False, height=False)
diff --git a/encryptsys.py b/encryptsys.py
index 45daea14fd6..f8d6f5477ff 100644
--- a/encryptsys.py
+++ b/encryptsys.py
@@ -4,34 +4,18 @@
def decrypt():
texto = input("Input the text to decrypt : ").split(".")
- abecedario = string.printable + "áéíóúÁÉÍÚÓàèìòùÀÈÌÒÙäëïöüÄËÏÖÜñÑ´"
- abecedario2 = []
+ abecedario = f"{string.printable}áéíóúÁÉÍÚÓàèìòùÀÈÌÒÙäëïöüÄËÏÖÜñÑ´"
nummoves = int(texto[0])
- indexs = []
finalindexs = []
textode1 = texto[1]
- textode2 = []
-
- for l in range(0, len(abecedario)):
- abecedario2.append(abecedario[l])
-
- for letter in range(0, len(textode1)):
- textode2.append(textode1[letter])
-
- for index in range(0, len(textode1)):
- indexs.append(abecedario.index(textode1[index]))
-
- for move in range(nummoves, 0):
+ abecedario2 = [abecedario[l] for l in range(len(abecedario))]
+ textode2 = [textode1[letter] for letter in range(len(textode1))]
+ indexs = [abecedario.index(textode1[index]) for index in range(len(textode1))]
+ for _ in range(nummoves, 0):
abecedario2 += abecedario2.pop(27)
- for value in indexs:
- newval = value - nummoves
- finalindexs.append(newval)
-
- textofin = ""
-
- for i in range(0, len(finalindexs)):
- textofin += abecedario2[finalindexs[i]]
+ finalindexs.extend(value - nummoves for value in indexs)
+ textofin = "".join(abecedario2[finalindex] for finalindex in finalindexs)
print(textofin)
@@ -39,37 +23,21 @@ def decrypt():
def encrypt():
texto = input("Input the text to encrypt : ")
- abecedario = string.printable + "áéíóúÁÉÍÚÓàèìòùÀÈÌÒÙäëïöüÄËÏÖÜñÑ´"
- abecedario2 = []
+ abecedario = f"{string.printable}áéíóúÁÉÍÚÓàèìòùÀÈÌÒÙäëïöüÄËÏÖÜñÑ´"
nummoves = randint(1, len(abecedario))
- indexs = []
-
- texttoenc = []
-
- for l in range(0, len(abecedario)):
- abecedario2.append(abecedario[l])
-
- for let in range(0, len(texto)):
- texttoenc.append(texto[let])
-
- for letter in texto:
- indexs.append(abecedario2.index(letter))
-
- for move in range(0, nummoves):
+ abecedario2 = [abecedario[l] for l in range(len(abecedario))]
+ texttoenc = [texto[let] for let in range(len(texto))]
+ indexs = [abecedario2.index(letter) for letter in texto]
+ for _ in range(nummoves):
abecedario2 += abecedario2.pop(0)
texto = []
- for i in range(0, len(indexs)):
- texto.append(abecedario2[indexs[i]])
- texto.append(".")
-
- fintext = ""
-
- for letter2 in range(0, len(texto), 2):
- fintext += texto[letter2]
+ for index in indexs:
+ texto.extend((abecedario2[index], "."))
+ fintext = "".join(texto[letter2] for letter2 in range(0, len(texto), 2))
- fintext = str(nummoves) + "." + fintext
+ fintext = f"{str(nummoves)}.{fintext}"
print("\Encrypted text : " + fintext)
diff --git a/env_check.py b/env_check.py
index 7e7bc53e8cd..4f764694760 100644
--- a/env_check.py
+++ b/env_check.py
@@ -22,7 +22,7 @@
env_check = (
env_check.strip()
) # Set the variable as itself, but strip the extra text out
- print("[{}]".format(env_check)) # Format the Output to be in Square Brackets
+ print(f"[{env_check}]")
newenv = os.getenv(
env_check
) # Set the variable newenv to get the settings from the OS what is currently set for the settings out the configfile
@@ -30,6 +30,4 @@
if newenv is None: # If it doesn't exist
print(env_check, "is not set") # Print it is not set
else: # Else if it does exist
- print(
- "Current Setting for {}={}\n".format(env_check, newenv)
- ) # Print out the details
+ print(f"Current Setting for {env_check}={newenv}\n")
diff --git a/ex20.py b/ex20.py
index 78dc206831d..70def217424 100644
--- a/ex20.py
+++ b/ex20.py
@@ -16,22 +16,19 @@ def print_a_line(line_count, f):
print(line_count, f.readline())
-current_file = open(input_file)
+with open(input_file) as current_file:
+ print("First let's print the whole file:\n")
+ print_all(current_file)
-print("First let's print the whole file:\n")
-print_all(current_file)
+ print("Now let's rewind, kind of like a tape.")
+ rewind(current_file)
-print("Now let's rewind, kind of like a tape.")
-rewind(current_file)
+ print("Let's print three lines:")
+ current_line = 1
+ print_a_line(current_line, current_file)
-print("Let's print three lines:")
-current_line = 1
-print_a_line(current_line, current_file)
+ current_line += 1
+ print_a_line(current_line, current_file)
-current_line = current_line + 1
-print_a_line(current_line, current_file)
-
-current_line = current_line + 1
-print_a_line(current_line, current_file)
-
-current_file.close()
+ current_line += 1
+ print_a_line(current_line, current_file)
diff --git a/facebook id hack.py b/facebook id hack.py
index a7faa2bb225..65c2e4f84c7 100644
--- a/facebook id hack.py
+++ b/facebook id hack.py
@@ -27,7 +27,7 @@
def create_form():
- form = dict()
+ form = {}
cookie = {"fr": "0ZvhC3YwYm63ZZat1..Ba0Ipu.Io.AAA.0.0.Ba0Ipu.AWUPqDLy"}
data = requests.get(post_url, headers=headers)
@@ -67,6 +67,6 @@ def function(email, passw, i):
i += 1
if len(passw) < 6:
continue
- print(str(i) + " : ", passw)
+ print(f"{i} : ", passw)
if function(email, passw, i):
break
diff --git a/facebook-autologin-bot.py b/facebook-autologin-bot.py
index 261f02721d5..a15ccd659d2 100644
--- a/facebook-autologin-bot.py
+++ b/facebook-autologin-bot.py
@@ -38,31 +38,27 @@ def speak(text):
)
speak(text)
continue
- if "facebook" or "fb" in text:
- print("Opening Your Facebook Account")
- text = "Opening Your Facebook Account"
- speak(text)
- # your username and password here
- username = "your username"
- password = "yourpassword"
- # download webdriver of suitable version by link below
- # https://sites.google.com/a/chromium.org/chromedriver/downloads
- # locate your driver
- driver = webdriver.Chrome("C:\\Users\\AJAY\\Desktop\\chromedriver.exe")
- url = "https://www.facebook.com"
- print("Opening facebook...")
- driver.get(url)
- driver.find_element_by_id("email").send_keys(username)
- print("Entering Your Username...")
- time.sleep(1)
- driver.find_element_by_id("pass").send_keys(password)
- print("Entering Your password...")
- driver.find_element_by_name("login").click()
- time.sleep(4)
- print("Login Successful")
- text = "Login Successful Enjoy your day sir"
- speak(text)
- continue
- else:
- print("input valid statement")
- continue
+ print("Opening Your Facebook Account")
+ text = "Opening Your Facebook Account"
+ speak(text)
+ # your username and password here
+ username = "your username"
+ password = "yourpassword"
+ # download webdriver of suitable version by link below
+ # https://sites.google.com/a/chromium.org/chromedriver/downloads
+ # locate your driver
+ driver = webdriver.Chrome("C:\\Users\\AJAY\\Desktop\\chromedriver.exe")
+ url = "https://www.facebook.com"
+ print("Opening facebook...")
+ driver.get(url)
+ driver.find_element_by_id("email").send_keys(username)
+ print("Entering Your Username...")
+ time.sleep(1)
+ driver.find_element_by_id("pass").send_keys(password)
+ print("Entering Your password...")
+ driver.find_element_by_name("login").click()
+ time.sleep(4)
+ print("Login Successful")
+ text = "Login Successful Enjoy your day sir"
+ speak(text)
+ continue
diff --git a/factor.py b/factor.py
index 2e17bec367f..f99e627623d 100644
--- a/factor.py
+++ b/factor.py
@@ -1,8 +1,5 @@
def factorial(n):
- if n == 0:
- return 1
- else:
- return n * factorial(n - 1)
+ return 1 if n == 0 else n * factorial(n - 1)
n = int(input("Input a number to compute the factiorial : "))
diff --git a/factorial_perm_comp.py b/factorial_perm_comp.py
index f329eac3380..fae25a66a1c 100644
--- a/factorial_perm_comp.py
+++ b/factorial_perm_comp.py
@@ -39,7 +39,7 @@ def main():
while True:
try:
n = int(input("\n Enter Value for n "))
- print("Factorial of {} = {}".format(n, factorial(n)))
+ print(f"Factorial of {n} = {factorial(n)}")
break
except ValueError:
print("Invalid Value")
@@ -52,7 +52,7 @@ def main():
try:
n = int(input("\n Enter Value for n "))
r = int(input("\n Enter Value for r "))
- print("Permutation of {}P{} = {}".format(n, r, permutation(n, r)))
+ print(f"Permutation of {n}P{r} = {permutation(n, r)}")
break
except ValueError:
print("Invalid Value")
@@ -65,7 +65,7 @@ def main():
n = int(input("\n Enter Value for n "))
r = int(input("\n Enter Value for r "))
- print("Combination of {}C{} = {}".format(n, r, combination(n, r)))
+ print(f"Combination of {n}C{r} = {combination(n, r)}")
break
except ValueError:
diff --git a/factors.py b/factors.py
index 570534daf1e..a90d1d15231 100644
--- a/factors.py
+++ b/factors.py
@@ -6,5 +6,5 @@
while b <= math.sqrt(a):
if a % b == 0:
print("A factor of the number is ", b)
- print("A factor of the number is ", int(a / b))
+ print("A factor of the number is ", a // b)
b += 1
diff --git a/fibonacci.py b/fibonacci.py
index 15a98a66f03..c984d578a6d 100644
--- a/fibonacci.py
+++ b/fibonacci.py
@@ -41,7 +41,7 @@ def getFibonacciDynamic(n: int, fib: list) -> int:
Calculate the fibonacci number at position n using dynamic programming to improve runtime
"""
- if n == 0 or n == 1:
+ if n in {0, 1}:
return n
if fib[n] != -1:
return fib[n]
diff --git a/fileinfo.py b/fileinfo.py
index bc80dc4bc5a..a7965f99d37 100644
--- a/fileinfo.py
+++ b/fileinfo.py
@@ -26,16 +26,14 @@
try:
with open(file_name) as f:
# Source: https://stackoverflow.com/a/1019572
- count = sum(1 for line in f)
+ count = sum(1 for _ in f)
f.seek(0)
- t_char = sum([len(line) for line in f])
+ t_char = sum(len(line) for line in f)
except FileNotFoundError as e:
print(e)
sys.exit(1)
-# When open item is a directory (python2)
except IOError:
pass
-# When open item is a directory (python3)
except IsADirectoryError:
pass
diff --git a/find_cube_root.py b/find_cube_root.py
index cf315708a25..ad68a4320b0 100644
--- a/find_cube_root.py
+++ b/find_cube_root.py
@@ -6,15 +6,14 @@
def cubeRoot():
x = int(input("Enter an integer: "))
- for ans in range(0, abs(x) + 1):
+ for ans in range(abs(x) + 1):
if ans ** 3 == abs(x):
break
if ans ** 3 != abs(x):
print(x, "is not a perfect cube!")
- else:
- if x < 0:
- ans = -ans
- print("Cube root of " + str(x) + " is " + str(ans))
+ elif x < 0:
+ ans = -ans
+ print(f"Cube root of {x} is {str(ans)}")
cubeRoot()
diff --git a/find_prime.py b/find_prime.py
index d6d5a515bd2..2e297e2fe97 100644
--- a/find_prime.py
+++ b/find_prime.py
@@ -30,9 +30,8 @@
def find_prime(num):
res_list = []
for i in range(2, num + 1):
- if res_list != [] and any(i % l == 0 for l in res_list):
- continue
- res_list.append(i)
+ if not res_list or all(i % l != 0 for l in res_list):
+ res_list.append(i)
return res_list
diff --git a/finding LCM.py b/finding LCM.py
index e95feb45b47..d39727c19e3 100644
--- a/finding LCM.py
+++ b/finding LCM.py
@@ -4,11 +4,7 @@
def compute_lcm(x, y):
# choose the greater number
- if x > y:
- greater = x
- else:
- greater = y
-
+ greater = x if x > y else y
while(True):
if((greater % x == 0) and (greater % y == 0)):
lcm = greater
diff --git a/flappyBird_pygame/flappy_bird.py b/flappyBird_pygame/flappy_bird.py
index 34b3206b7e2..975b0fb258b 100644
--- a/flappyBird_pygame/flappy_bird.py
+++ b/flappyBird_pygame/flappy_bird.py
@@ -234,7 +234,7 @@ def main():
# check for collisions
pipe_collision = any(p.collides_with(bird) for p in pipes)
- if pipe_collision or 0 >= bird.y or bird.y >= W_HEIGHT - Bird.HEIGHT:
+ if pipe_collision or bird.y <= 0 or bird.y >= W_HEIGHT - Bird.HEIGHT:
done = True
for x in (0, W_WIDTH / 2):
diff --git a/floodfill/floodfill.py b/floodfill/floodfill.py
index b4c39735f23..09df1862c50 100644
--- a/floodfill/floodfill.py
+++ b/floodfill/floodfill.py
@@ -29,7 +29,7 @@ def generateClosedPolygons(self):
from random import randint, uniform
from math import pi, sin, cos
- for n in range(0, randint(0, 5)):
+ for _ in range(randint(0, 5)):
x = randint(50, self.window_width - 50)
y = randint(50, self.window_height - 50)
@@ -37,21 +37,19 @@ def generateClosedPolygons(self):
angle += uniform(0, 0.7)
vertices = []
- for i in range(0, randint(3, 7)):
+ for _ in range(randint(3, 7)):
dist = randint(10, 50)
vertices.append(
(int(x + cos(angle) * dist), int(y + sin(angle) * dist))
)
angle += uniform(0, pi / 2)
- for i in range(0, len(vertices) - 1):
+ for i in range(len(vertices) - 1):
pygame.draw.line(
self.surface, (255, 0, 0), vertices[i], vertices[i + 1]
)
- pygame.draw.line(
- self.surface, (255, 0, 0), vertices[len(vertices) - 1], vertices[0]
- )
+ pygame.draw.line(self.surface, (255, 0, 0), vertices[-1], vertices[0])
def run(self):
looping = True
diff --git a/folder_size.py b/folder_size.py
index 7410de8da36..9bd1117b222 100755
--- a/folder_size.py
+++ b/folder_size.py
@@ -35,8 +35,9 @@
) # Add the size of each file in the root dir to get the total size.
fsizeList = [
- str(round(fsizedicr[key] * dir_size, 2)) + " " + key for key in fsizedicr
-] # List of units
+ f"{str(round(fsizedicr[key] * dir_size, 2))} {key}" for key in fsizedicr
+]
+
if dir_size == 0:
print("File Empty") # Sanity check to eliminate corner-case of empty file.
@@ -44,4 +45,4 @@
for units in sorted(fsizeList)[
::-1
]: # Reverse sort list of units so smallest magnitude units print first.
- print("Folder Size: " + units)
+ print(f"Folder Size: {units}")
diff --git a/ftp_send_receive.py b/ftp_send_receive.py
index 691e0e8e899..d03ed1e418e 100644
--- a/ftp_send_receive.py
+++ b/ftp_send_receive.py
@@ -22,7 +22,7 @@
def receive_file(filename="example.txt"):
with open(filename, "wb") as out_file:
- ftp.retrbinary("RETR " + filename, out_file.write, 1024)
+ ftp.retrbinary(f"RETR {filename}", out_file.write, 1024)
ftp.quit()
@@ -34,5 +34,5 @@ def receive_file(filename="example.txt"):
def send_file(filename="example.txt"):
with open(filename, "rb") as in_file:
- ftp.storbinary("STOR " + filename, in_file)
+ ftp.storbinary(f"STOR {filename}", in_file)
ftp.quit()
diff --git a/gambler.py b/gambler.py
index e56d5dd65d1..362cd9c4f7e 100644
--- a/gambler.py
+++ b/gambler.py
@@ -8,7 +8,7 @@
wins = 0
bets = 0
-for i in range(trials):
+for _ in range(trials):
cash = stake
while cash > 0 and cash < goals:
bets += 1
@@ -18,5 +18,5 @@
cash -= 1
if cash == goals:
wins += 1
-print("Your won: " + str(100 * wins // trials) + "$")
-print("Your bets: " + str(bets // trials))
+print(f"Your won: {str(100 * wins // trials)}$")
+print(f"Your bets: {str(bets // trials)}")
diff --git a/game_of_life/game_o_life.py b/game_of_life/game_o_life.py
index 7d2ee832dcf..9709a5ce0f7 100644
--- a/game_of_life/game_o_life.py
+++ b/game_of_life/game_o_life.py
@@ -45,8 +45,7 @@
def create_canvas(size):
- canvas = [[False for i in range(size)] for j in range(size)]
- return canvas
+ return [[False for _ in range(size)] for _ in range(size)]
def seed(canvas):
@@ -98,16 +97,13 @@ def __judge_point(pt, neighbours):
# running the rules of game here.
state = pt
- if pt:
- if alive < 2:
- state = False
- elif alive == 2 or alive == 3:
- state = True
- elif alive > 3:
+ if state:
+ if alive < 2 or alive not in [2, 3] and alive > 3:
state = False
- else:
- if alive == 3:
+ elif alive in [2, 3]:
state = True
+ elif alive == 3:
+ state = True
return state
diff --git a/gcd.py b/gcd.py
index 0f10da082d7..83f27fe0748 100644
--- a/gcd.py
+++ b/gcd.py
@@ -2,6 +2,7 @@
although there is function to find gcd in python but this is the code which
takes two inputs and prints gcd of the two.
"""
+
a = int(input("Enter number 1 (a): "))
b = int(input("Enter number 2 (b): "))
@@ -9,6 +10,6 @@
while i <= a and i <= b:
if a % i == 0 and b % i == 0:
gcd = i
- i = i + 1
+ i += 1
print("\nGCD of {0} and {1} = {2}".format(a, b, gcd))
diff --git a/get_crypto_price.py b/get_crypto_price.py
index a263e4294b8..b1f4959f2b5 100644
--- a/get_crypto_price.py
+++ b/get_crypto_price.py
@@ -14,12 +14,12 @@ def getprice(symbol, exchange_id):
try:
v_price = exchange.fetch_ticker(symbol)
r_price = v_price["info"]["lastPrice"]
- if symbol_1[1] == "USD" or symbol_1[1] == "USDT":
- v_return = "{:.2f} {}".format(float(r_price), symbol_1[1])
- return v_return
- else:
- v_return = "{:.8f} {}".format(float(r_price), symbol_1[1])
- return v_return
+ return (
+ "{:.2f} {}".format(float(r_price), symbol_1[1])
+ if symbol_1[1] in ["USD", "USDT"]
+ else "{:.8f} {}".format(float(r_price), symbol_1[1])
+ )
+
except (ccxt.ExchangeError, ccxt.NetworkError) as error:
# add necessary handling or rethrow the exception
return "Got an error", type(error).__name__, error.args
diff --git a/get_info_remoute_srv.py b/get_info_remoute_srv.py
index eb08c2c9a95..ac91ccbd52b 100644
--- a/get_info_remoute_srv.py
+++ b/get_info_remoute_srv.py
@@ -18,13 +18,14 @@
result = []
for command in COMMANDS:
ssh = subprocess.Popen(
- ["ssh", "%s" % host, command],
+ ["ssh", f"{host}", command],
shell=False,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
)
+
result.append(ssh.stdout.readlines())
- print("--------------- " + host + " --------------- ")
+ print(f"--------------- {host} --------------- ")
for res in result:
if not res:
print(ssh.stderr.readlines())
diff --git a/get_likes_on_FB.py b/get_likes_on_FB.py
index cb999c76128..8588d76c954 100644
--- a/get_likes_on_FB.py
+++ b/get_likes_on_FB.py
@@ -4,37 +4,24 @@
import sys
import urllib
-accessToken = "TOKENVALUE" # YOUR ACCESS TOKEN GETS INSERTED HERE
userId = sys.argv[1] # USERID
limit = 100
-url = (
- "https://graph.facebook.com/"
- + userId
- + "/posts?access_token="
- + accessToken
- + "&limit="
- + str(limit)
-) # FB Link
+accessToken = "TOKENVALUE"
+url = f"https://graph.facebook.com/{userId}/posts?access_token={accessToken}&limit={limit}"
+
data = json.load(urllib.urlopen(url))
id = 0
-print(str(id))
+print(id)
for item in data["data"]:
time = item["created_time"][11:19]
date = item["created_time"][5:10]
- year = item["created_time"][0:4]
-
-if "shares" in item:
- num_share = item["shares"]["count"]
-else:
- num_share = 0
-if "likes" in item:
- num_like = item["likes"]["count"]
-else:
- num_like = 0
+ year = item["created_time"][:4]
+num_share = item["shares"]["count"] if "shares" in item else 0
+num_like = item["likes"]["count"] if "likes" in item else 0
id += 1
print(
diff --git a/get_youtube_view.py b/get_youtube_view.py
index 77f1b1a29b8..3d557fd16dc 100644
--- a/get_youtube_view.py
+++ b/get_youtube_view.py
@@ -2,6 +2,7 @@
Created on Thu Apr 27 16:28:36 2017
@author: barnabysandeford
"""
+
# Currently works for Safari, but just change to whichever
# browser you're using.
@@ -41,9 +42,9 @@
if url.startswith("https://"):
driver.get(url)
else:
- driver.get("https://" + url)
+ driver.get(f"https://{url}")
-for i in range(count):
+for _ in range(count):
# Sets the page to refresh at the refreshrate.
time.sleep(refreshrate)
driver.refresh()
diff --git a/google.py b/google.py
index 99a14b8c1c7..748fb15ff7b 100755
--- a/google.py
+++ b/google.py
@@ -16,14 +16,8 @@
def main():
- if len(sys.argv) > 1:
- keyword = " ".join(sys.argv[1:])
- else:
- # if no keyword is entered, the script would search for the keyword
- # copied in the clipboard
- keyword = pyperclip.paste()
-
- res = requests.get("http://google.com/search?q=" + keyword)
+ keyword = " ".join(sys.argv[1:]) if len(sys.argv) > 1 else pyperclip.paste()
+ res = requests.get(f"http://google.com/search?q={keyword}")
res.raise_for_status()
soup = bs4.BeautifulSoup(res.text)
linkElems = soup.select(".r a")
diff --git a/googlemaps.py b/googlemaps.py
index afc55094c75..0588c1369f0 100644
--- a/googlemaps.py
+++ b/googlemaps.py
@@ -9,16 +9,11 @@
longi = g.latlng[1]
query = input("Enter the query")
-key = "your_api_key"
-url = (
- "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location="
- + str(lat)
- + ","
- + str(longi)
- + "radius=1000"
-)
+url = f"https://maps.googleapis.com/maps/api/place/nearbysearch/json?location={str(lat)},{str(longi)}radius=1000"
+
-r = requests.get(url + "query=" + query + "&key=" + key)
+key = "your_api_key"
+r = requests.get(f"{url}query={query}&key={key}")
x = r.json()
y = x["results"]
diff --git a/googleweb.py b/googleweb.py
index 92fa989bad3..9f68a36ab58 100644
--- a/googleweb.py
+++ b/googleweb.py
@@ -16,8 +16,7 @@ def SearchResults():
for i in f:
singleLink=[]
singleRatio=[]
- singleWrite=[]
- singleWrite.append(i.strip("\n"))
+ singleWrite = [i.strip("\n")]
checkString=i.replace("+","")
searchString=i.replace("+","%2B")
searchString=searchString.replace(" ","+")
@@ -25,11 +24,10 @@ def SearchResults():
r = requests.get(searchString, headers=header)
soup = bs4.BeautifulSoup(r.text, features="html.parser")
elements = soup.select(".r a")
- for g in elements:
- lis.append(g.get("href"))
+ lis.extend(g.get("href") for g in elements)
for k in lis:
sentence=""
- if (k[0] != "#") and k[0] != "/":
+ if k[0] not in ["#", "/"]:
checker = k[8:16]
if (checker != "webcache"):
rr = requests.get(k, headers=header, verify=False)
@@ -41,25 +39,24 @@ def SearchResults():
if(ratio>80):
singleLink.append(k)
singleRatio.append(ratio)
- if(len(singleLink)>=4):
+ if (len(singleLink)>=4):
singleLink=np.array(singleLink)
singleRatio=np.array(singleRatio)
inds=singleRatio.argsort()
sortedLink=singleLink[inds]
sortedFinalList=list(sortedLink[::-1])
sortedFinalList=sortedFinalList[:4]
- FinalResult.append(singleWrite+sortedFinalList)
- elif(len(singleLink)<4) and len(singleLink)>0:
+ elif len(singleLink) > 0:
singleLink = np.array(singleLink)
singleRatio = np.array(singleRatio)
inds = singleRatio.argsort()
sortedLink = singleLink[inds]
sortedFinalList = list(sortedLink[::-1])
- sortedFinalList=sortedFinalList+(4-len(sortedFinalList))*[[" "]]
- FinalResult.append(singleWrite + sortedFinalList)
+ sortedFinalList += (4-len(sortedFinalList))*[[" "]]
else:
sortedFinalList=[[" "]]*4
- FinalResult.append(singleWrite+sortedFinalList)
+
+ FinalResult.append(singleWrite+sortedFinalList)
SearchResults()
diff --git a/happy_num.py b/happy_num.py
index a9740d0703b..cf8879b28e0 100644
--- a/happy_num.py
+++ b/happy_num.py
@@ -11,18 +11,17 @@ def isHappyNumber(num):
num = num//10;
return sum;
-num = 82;
+num = 82;
result = num;
-
-while(result != 1 and result != 4):
+
+while result not in [1, 4]:
result = isHappyNumber(result);
-
-#Happy number always ends with 1
-if(result == 1):
- print(str(num) + " is a happy number after apply way 1");
-#Unhappy number ends in a cycle of repeating numbers which contain 4
-elif(result == 4):
- print(str(num) + " is not a happy number after apply way 1");
+
+#Happy number always ends with 1
+if (result == 1):
+ print(f"{num} is a happy number after apply way 1");
+elif (result == 4):
+ print(f"{num} is not a happy number after apply way 1");
@@ -34,12 +33,12 @@ def isHappyNumber(num):
n=num
setData=set() #set datastructure for checking a number is repeated or not.
while 1:
- if n==1:
- print("{} is a happy number after apply way 2".format(num))
- break
- if n in setData:
- print("{} is Not a happy number after apply way 2".format(num))
- break
- else:
- setData.add(n) #adding into set if not inside set
- n=int(''.join(str(sum([int(i)**2 for i in str(n)])))) #Pythonic way
+ if n==1:
+ print(f"{num} is a happy number after apply way 2")
+ break
+ if n in setData:
+ print(f"{num} is Not a happy number after apply way 2")
+ break
+ else:
+ setData.add(n) #adding into set if not inside set
+ n = int(''.join(str(sum(int(i)**2 for i in str(n)))))
diff --git a/image2pdf/image2pdf.py b/image2pdf/image2pdf.py
index 7527836c7eb..4efc3462619 100644
--- a/image2pdf/image2pdf.py
+++ b/image2pdf/image2pdf.py
@@ -21,11 +21,11 @@ def getPictures(self):
if self.isEmpty(pictures):
print(" [Error] there are no pictrues in the directory ! ")
raise Exception(" [Error] there are no pictrues in the directory !")
- print("pictures are : \n {}".format(pictures))
+ print(f"pictures are : \n {pictures}")
return pictures
def isEmpty(self, items):
- return True if len(items) == 0 else False
+ return len(items) == 0
def convertPictures(self):
for picture in self.getPictures():
diff --git a/input matrice,product any order!.py b/input matrice,product any order!.py
index d0e3223e4c4..7967b749d59 100644
--- a/input matrice,product any order!.py
+++ b/input matrice,product any order!.py
@@ -7,8 +7,8 @@
matrice = []
rowan = []
-for i in range(0, rows):
- for j in range(0, coloumns):
+for _ in range(rows):
+ for _ in range(coloumns):
element = int(input("enter the element"))
rowan.append(element)
print("one row completed")
@@ -27,8 +27,8 @@
rowan = []
matrix = []
-for i in range(0, rows_):
- for j in range(0, coloumns_):
+for _ in range(rows_):
+ for _ in range(coloumns_):
element = int(input("enter the element"))
rowan.append(element)
print("one row completed")
@@ -44,8 +44,8 @@
# creating empty frame:
result = []
-for i in range(0, rows):
- for j in range(0, coloumns_):
+for _ in range(rows):
+ for _ in range(coloumns_):
rowan.append(0)
result.append(rowan)
rowan = []
diff --git a/insertion_sort.py b/insertion_sort.py
index 8ea77cb9552..0489cd2b6a9 100644
--- a/insertion_sort.py
+++ b/insertion_sort.py
@@ -7,7 +7,7 @@ def input_list():
# taking length and then values of list as input from user
n = int(input("Enter number of elements in the list: ")) # taking value from user
for i in range(n):
- temp = int(input("Enter element " + str(i + 1) + ": "))
+ temp = int(input(f"Enter element {str(i + 1)}: "))
list.append(temp)
@@ -22,7 +22,7 @@ def insertion_sort(list, n):
OUTPUT:
list of sorted values in assending order
"""
- for i in range(0, n):
+ for i in range(n):
key = list[i]
j = i - 1
# Swap elements witth key iff they are
@@ -45,7 +45,7 @@ def insertion_sort_desc(list, n):
OUTPUT:
list of sorted values in desending order
"""
- for i in range(0, n):
+ for i in range(n):
key = list[i]
j = i - 1
# Swap elements witth key iff they are
diff --git a/insta_monitering/insta_api.py b/insta_monitering/insta_api.py
index 957f240730d..5645bf4637a 100644
--- a/insta_monitering/insta_api.py
+++ b/insta_monitering/insta_api.py
@@ -37,11 +37,7 @@ def get(self):
if " " in q:
q = q.replace(" ", "")
self.background_task(user=user, tags=q, type=type, productId=productId)
- temp = {}
- temp["query"] = q
- temp["userId"] = user
- temp["status"] = True
- temp["productId"] = productId
+ temp = {"query": q, "userId": user, "status": True, "productId": productId}
print(
"{0}, {1}, {2}, {3}".format(
temp["userId"], temp["productId"], temp["query"], temp["status"]
@@ -61,11 +57,7 @@ def get(self):
self.send_error(400)
obj = InstaPorcessClass()
result = obj.deletProcess(tags=q, user=user, productId=productId)
- temp = {}
- temp["query"] = q
- temp["userId"] = user
- temp["productId"] = productId
- temp["status"] = result
+ temp = {"query": q, "userId": user, "productId": productId, "status": result}
print(
"{0}, {1}, {2}, {3}".format(
temp["userId"], temp["productId"], temp["query"], temp["status"]
@@ -85,11 +77,7 @@ def get(self):
self.send_error(400)
obj = InstaPorcessClass()
result = obj.statusCheck(tags=q, user=user, productId=productId)
- temp = {}
- temp["query"] = q
- temp["userId"] = user
- temp["status"] = result
- temp["productId"] = productId
+ temp = {"query": q, "userId": user, "status": result, "productId": productId}
print(
"{0}, {1}, {2}, {3}".format(
temp["userId"], temp["productId"], temp["query"], temp["status"]
diff --git a/insta_monitering/insta_datafetcher.py b/insta_monitering/insta_datafetcher.py
index 8c5ed78b902..a1a7b0bd9d0 100644
--- a/insta_monitering/insta_datafetcher.py
+++ b/insta_monitering/insta_datafetcher.py
@@ -26,7 +26,7 @@
class PorxyApplyingDecorator(object):
def __init__(self):
- filename = os.getcwd() + "/" + "ipList.txt"
+ filename = f"{os.getcwd()}/ipList.txt"
with open(filename, "r") as f:
ipdata = f.read()
self._IP = random.choice(ipdata.split(","))
@@ -71,7 +71,6 @@ async def dataprocess(htmldata):
maindict[i] = datadict[i]
except Exception as e:
print(e)
- pass
return maindict
@@ -107,12 +106,12 @@ def __init__(self, user, tags, type, productId):
try:
self.mon = pymongo.MongoClient(host=config.host, port=config.mongoPort)
- db = self.mon[productId + ":" + user + ":insta"]
+ db = self.mon[f"{productId}:{user}:insta"]
self._collection = db[tags]
if type == "hashtags":
- self._url = "https://www.instagram.com/explore/tags/" + tags + "/?__a=1"
- if type == "profile":
- self._url = "https://www.instagram.com/" + tags + "/?__a=1"
+ self._url = f"https://www.instagram.com/explore/tags/{tags}/?__a=1"
+ elif type == "profile":
+ self._url = f"https://www.instagram.com/{tags}/?__a=1"
except Exception as err:
print(f"exception {err}")
print("error::MointeringClass.__init__>>", sys.exc_info()[1])
@@ -129,9 +128,11 @@ def _dataProcessing(self, data):
print("top_post::", len(top_post))
futures = []
for i in media_post:
- tempdict = {}
- tempdict["url"] = "https://www.instagram.com/p/" + i["code"] + "/"
- tempdict["code"] = i["code"]
+ tempdict = {
+ "url": "https://www.instagram.com/p/" + i["code"] + "/",
+ "code": i["code"],
+ }
+
userdata.append(tempdict)
for i in top_post:
tempdict = {}
@@ -175,10 +176,9 @@ def _lastProcess(self, userdata, media_post, top_post):
tofind = ["owner", "location"]
for z in tofind:
try:
- tempdict[z + "data"] = i["data"][z]
+ tempdict[f"{z}data"] = i["data"][z]
except Exception as e:
print(f"exception : {e}")
- pass
mainlist.append(tempdict)
self._insertFunction(tempdict.copy())
for k in top_post:
@@ -187,10 +187,9 @@ def _lastProcess(self, userdata, media_post, top_post):
tofind = ["owner", "location"]
for z in tofind:
try:
- tempdict[z + "data"] = i["data"][z]
+ tempdict[f"{z}data"] = i["data"][z]
except Exception as err:
print(f"Exception :{err}")
- pass
mainlist.append(tempdict)
self._insertFunction(tempdict.copy())
except Exception as err:
@@ -272,10 +271,7 @@ def _dbProcessReader(self, user, tags, productId):
try:
db = mon["insta_process"]
collection = db["process"]
- temp = {}
- temp["user"] = user
- temp["tags"] = tags
- temp["productId"] = productId
+ temp = {"user": user, "tags": tags, "productId": productId}
records = collection.find(temp).count()
if records == 0:
raise Exception
@@ -293,10 +289,7 @@ def _processstart(self, user, tags, productId):
try:
db = mon["insta_process"]
collection = db["process"]
- temp = {}
- temp["user"] = user
- temp["tags"] = tags
- temp["productId"] = productId
+ temp = {"user": user, "tags": tags, "productId": productId}
collection.insert(temp)
except Exception as err:
print(f"execption : {err}\n")
@@ -326,10 +319,7 @@ def deletProcess(self, user, tags, productId):
try:
db = mon["insta_process"]
collection = db["process"]
- temp = {}
- temp["user"] = user
- temp["tags"] = tags
- temp["productId"] = productId
+ temp = {"user": user, "tags": tags, "productId": productId}
collection.delete_one(temp)
except Exception as err:
print(f"exception : {err}\n")
@@ -344,15 +334,9 @@ def statusCheck(self, user, tags, productId):
try:
db = mon["insta_process"]
collection = db["process"]
- temp = {}
- temp["user"] = user
- temp["tags"] = tags
- temp["productId"] = productId
+ temp = {"user": user, "tags": tags, "productId": productId}
records = collection.find(temp).count()
- if records == 0:
- result = False
- else:
- result = True
+ result = records != 0
except Exception as err:
print(f"exception : {err}\n")
print("error::dbProcessReader:>>", sys.exc_info()[1])
@@ -365,7 +349,7 @@ class DBDataFetcher:
def __init__(self, user, tags, type, productId):
try:
self.mon = pymongo.MongoClient(host=config.host, port=config.mongoPort)
- db = self.mon[productId + ":" + user + ":insta"]
+ db = self.mon[f"{productId}:{user}:insta"]
self._collection = db[tags]
except Exception as err:
print(f"exception : {err}\n")
diff --git a/insta_monitering/subpinsta.py b/insta_monitering/subpinsta.py
index 6e234063c75..a86cd8f2760 100644
--- a/insta_monitering/subpinsta.py
+++ b/insta_monitering/subpinsta.py
@@ -18,7 +18,7 @@ def instasubprocess(user, tags, type, productId):
+ " "
+ productId
)
- command = child_env + " " + file_pocessing
+ command = f"{child_env} {file_pocessing}"
result = subprocess.Popen(command, shell=True)
result.wait()
except:
diff --git a/internet_connection_py3.py b/internet_connection_py3.py
index 46ec09fdba9..c3ddeeb9e3c 100644
--- a/internet_connection_py3.py
+++ b/internet_connection_py3.py
@@ -26,5 +26,5 @@
browser = webdriver.Firefox()
browser.get(search)
os.system("cls") # os.system('clear') if Linux
-print("[+] Website " + search + " opened!")
+print(f"[+] Website {search} opened!")
browser.close()
diff --git a/invisible_clock.py b/invisible_clock.py
index 17f6d97b106..aaddd2b105f 100644
--- a/invisible_clock.py
+++ b/invisible_clock.py
@@ -14,7 +14,7 @@
background = 0
# capturing the background
-for i in range(30): # 30 times
+for _ in range(30):
ret, background = cap.read()
while cap.isOpened():
diff --git a/jee_result.py b/jee_result.py
index 7aa6046a50b..87f5b0ee25e 100644
--- a/jee_result.py
+++ b/jee_result.py
@@ -26,7 +26,7 @@
ct = 0
# print currentdate
yyyymmdd = currentdate.strftime("%Y/%m/%d")
- ddmmyyyy = yyyymmdd[8:] + "/" + yyyymmdd[5:7] + "/" + yyyymmdd[:4]
+ ddmmyyyy = f"{yyyymmdd[8:]}/{yyyymmdd[5:7]}/{yyyymmdd[:4]}"
print(ddmmyyyy)
b.open("http://cbseresults.nic.in/jee/jee_2015.htm")
b.select_form(nr=0)
@@ -37,7 +37,7 @@
# print(fd.read())
soup = BeautifulSoup(fd.read(), "html.parser")
- for writ in soup.find_all("table"):
+ for _ in soup.find_all("table"):
ct = ct + 1
# print (ct)
if ct == 6:
diff --git a/kmp_str_search.py b/kmp_str_search.py
index cae439949b9..e7ec0b8aa82 100644
--- a/kmp_str_search.py
+++ b/kmp_str_search.py
@@ -13,7 +13,7 @@ def kmp(pattern, text, len_p=None, len_t=None):
# 1) Construct the failure array
failure = [0]
i = 0
- for index, char in enumerate(pattern[1:]):
+ for char in pattern[1:]:
if pattern[i] == char:
i += 1
else:
diff --git a/lcm.py b/lcm.py
index c2d5b9731cc..da4ddbdce7a 100644
--- a/lcm.py
+++ b/lcm.py
@@ -29,11 +29,7 @@ def lcm(x, y):
if x <= 0 or y <= 0:
return -1
- if x > y:
- greater_number = x
- else:
- greater_number = y
-
+ greater_number = x if x > y else y
while True:
if (greater_number % x == 0) and (greater_number % y == 0):
lcm = greater_number
diff --git a/length.py b/length.py
index 257c62a4be7..d1deda4c1e8 100644
--- a/length.py
+++ b/length.py
@@ -3,6 +3,6 @@
# counter variable to count the character in a string
counter = 0
-for s in str:
+for _ in str:
counter = counter + 1
print("Length of the input string is:", counter)
diff --git a/levenshtein_distance.py b/levenshtein_distance.py
index 1dde234f490..3d8a54db25b 100644
--- a/levenshtein_distance.py
+++ b/levenshtein_distance.py
@@ -8,9 +8,6 @@ def levenshtein_dis(wordA, wordB):
length_B = len(wordB)
max_len = 0
diff = 0
- distances = []
- distance = 0
-
# check the difference of the word to decide how many letter should be delete or add
# also store that value in the 'diff' variable and get the max length of the user given words
if length_A > length_B:
@@ -23,26 +20,19 @@ def levenshtein_dis(wordA, wordB):
diff = 0
max_len = length_A
- # starting from the front of the words and compare the letters of the both user given words
- for x in range(max_len - diff):
- if wordA[x] != wordB[x]:
- distance += 1
-
- # add the 'distance' value to the 'distances' array
- distances.append(distance)
- distance = 0
+ distance = sum(wordA[x] != wordB[x] for x in range(max_len - diff))
+ distances = [distance]
+ distance = sum(
+ wordA[-(x + 1)] != wordB[-(x + 1)] for x in range(max_len - diff)
+ )
- # starting from the back of the words and compare the letters of the both user given words
- for x in range(max_len - diff):
- if wordA[-(x + 1)] != wordB[-(x + 1)]:
- distance += 1
# add the 'distance' value to the 'distances' array
distances.append(distance)
# get the minimun value of the 'distances' array and add it with the 'diff' values and
# store them in the 'diff' variable
- diff = diff + min(distances)
+ diff += min(distances)
# return the value
return diff
diff --git a/linear-algebra-python/src/lib.py b/linear-algebra-python/src/lib.py
index 9719d915bd2..d710502c1c7 100644
--- a/linear-algebra-python/src/lib.py
+++ b/linear-algebra-python/src/lib.py
@@ -71,9 +71,9 @@ def __str__(self):
length = len(self.__components)
for i in range(length):
if i != length - 1:
- ans += str(self.__components[i]) + ","
+ ans += f"{str(self.__components[i])},"
else:
- ans += str(self.__components[i]) + ")"
+ ans += f"{str(self.__components[i])})"
if len(ans) == 1:
ans += ")"
return ans
@@ -98,9 +98,7 @@ def eulidLength(self):
"""
returns the eulidean length of the vector
"""
- summe = 0
- for c in self.__components:
- summe += c ** 2
+ summe = sum(c ** 2 for c in self.__components)
return math.sqrt(summe)
def __add__(self, other):
@@ -110,12 +108,9 @@ def __add__(self, other):
returns a new vector that represents the sum.
"""
size = self.size()
- result = []
- if size == other.size():
- for i in range(size):
- result.append(self.__components[i] + other.component(i))
- else:
+ if size != other.size():
raise Exception("must have the same size")
+ result = [self.__components[i] + other.component(i) for i in range(size)]
return Vector(result)
def __sub__(self, other):
@@ -125,12 +120,9 @@ def __sub__(self, other):
returns a new vector that represents the differenz.
"""
size = self.size()
- result = []
- if size == other.size():
- for i in range(size):
- result.append(self.__components[i] - other.component(i))
- else: # error case
+ if size != other.size():
raise Exception("must have the same size")
+ result = [self.__components[i] - other.component(i) for i in range(size)]
return Vector(result)
def __mul__(self, other):
@@ -139,15 +131,11 @@ def __mul__(self, other):
and the dot-product
"""
ans = []
- if isinstance(other, float) or isinstance(other, int):
- for c in self.__components:
- ans.append(c * other)
+ if isinstance(other, (float, int)):
+ ans.extend(c * other for c in self.__components)
elif isinstance(other, Vector) and (self.size() == other.size()):
size = self.size()
- summe = 0
- for i in range(size):
- summe += self.__components[i] * other.component(i)
- return summe
+ return sum(self.__components[i] * other.component(i) for i in range(size))
else: # error case
raise Exception("invalide operand!")
return Vector(ans)
@@ -156,7 +144,7 @@ def copy(self):
"""
copies this vector and returns it.
"""
- components = [x for x in self.__components]
+ components = list(self.__components)
return Vector(components)
def changeComponent(self, pos, value):
@@ -201,9 +189,7 @@ def zeroVector(dimension):
"""
# precondition
assert isinstance(dimension, int)
- ans = []
- for i in range(dimension):
- ans.append(0)
+ ans = [0 for _ in range(dimension)]
return Vector(ans)
@@ -233,8 +219,9 @@ def axpy(scalar, x, y):
assert (
isinstance(x, Vector)
and (isinstance(y, Vector))
- and (isinstance(scalar, int) or isinstance(scalar, float))
+ and (isinstance(scalar, (int, float)))
)
+
return x * scalar + y
@@ -289,7 +276,7 @@ def __str__(self):
ans += "|"
for j in range(self.__width):
if j < self.__width - 1:
- ans += str(self.__matrix[i][j]) + ","
+ ans += f"{str(self.__matrix[i][j])},"
else:
ans += str(self.__matrix[i][j]) + "|\n"
return ans
@@ -330,26 +317,25 @@ def __mul__(self, other):
implements the matrix-scalar multiplication
"""
if isinstance(other, Vector): # vector-matrix
- if other.size() == self.__width:
- ans = zeroVector(self.__height)
- for i in range(self.__height):
- summe = 0
- for j in range(self.__width):
- summe += other.component(j) * self.__matrix[i][j]
- ans.changeComponent(i, summe)
- summe = 0
- return ans
- else:
+ if other.size() != self.__width:
raise Exception(
"vector must have the same size as the "
+ "number of columns of the matrix!"
)
- elif isinstance(other, int) or isinstance(other, float): # matrix-scalar
+ ans = zeroVector(self.__height)
+ for i in range(self.__height):
+ summe = sum(
+ other.component(j) * self.__matrix[i][j]
+ for j in range(self.__width)
+ )
+
+ ans.changeComponent(i, summe)
+ summe = 0
+ return ans
+ elif isinstance(other, (int, float)): # matrix-scalar
matrix = []
for i in range(self.__height):
- row = []
- for j in range(self.__width):
- row.append(self.__matrix[i][j] * other)
+ row = [self.__matrix[i][j] * other for j in range(self.__width)]
matrix.append(row)
return Matrix(matrix, self.__width, self.__height)
@@ -357,31 +343,33 @@ def __add__(self, other):
"""
implements the matrix-addition.
"""
- if self.__width == other.width() and self.__height == other.height():
- matrix = []
- for i in range(self.__height):
- row = []
- for j in range(self.__width):
- row.append(self.__matrix[i][j] + other.component(i, j))
- matrix.append(row)
- return Matrix(matrix, self.__width, self.__height)
- else:
+ if self.__width != other.width() or self.__height != other.height():
raise Exception("matrix must have the same dimension!")
+ matrix = []
+ for i in range(self.__height):
+ row = [
+ self.__matrix[i][j] + other.component(i, j)
+ for j in range(self.__width)
+ ]
+
+ matrix.append(row)
+ return Matrix(matrix, self.__width, self.__height)
def __sub__(self, other):
"""
implements the matrix-subtraction.
"""
- if self.__width == other.width() and self.__height == other.height():
- matrix = []
- for i in range(self.__height):
- row = []
- for j in range(self.__width):
- row.append(self.__matrix[i][j] - other.component(i, j))
- matrix.append(row)
- return Matrix(matrix, self.__width, self.__height)
- else:
+ if self.__width != other.width() or self.__height != other.height():
raise Exception("matrix must have the same dimension!")
+ matrix = []
+ for i in range(self.__height):
+ row = [
+ self.__matrix[i][j] - other.component(i, j)
+ for j in range(self.__width)
+ ]
+
+ matrix.append(row)
+ return Matrix(matrix, self.__width, self.__height)
def __eq__(self, other):
"""
@@ -404,10 +392,8 @@ def squareZeroMatrix(N):
returns a square zero-matrix of dimension NxN
"""
ans = []
- for i in range(N):
- row = []
- for j in range(N):
- row.append(0)
+ for _ in range(N):
+ row = [0 for _ in range(N)]
ans.append(row)
return Matrix(ans, N, N)
@@ -419,9 +405,7 @@ def randomMatrix(W, H, a, b):
"""
matrix = []
random.seed(None)
- for i in range(H):
- row = []
- for j in range(W):
- row.append(random.randint(a, b))
+ for _ in range(H):
+ row = [random.randint(a, b) for _ in range(W)]
matrix.append(row)
return Matrix(matrix, W, H)
diff --git a/linear_search.py b/linear_search.py
index d8776a12c09..ee4e11042a2 100644
--- a/linear_search.py
+++ b/linear_search.py
@@ -1,6 +1,6 @@
list = []
num = int(input("Enter size of list: \t"))
-for n in range(num):
+for _ in range(num):
numbers = int(input("Enter any number: \t"))
list.append(numbers)
diff --git a/loader.py b/loader.py
index 7ce80fef603..fe9a4784e3e 100644
--- a/loader.py
+++ b/loader.py
@@ -18,7 +18,7 @@ def animate(message="loading", endmessage="Done!"):
for c in itertools.cycle(["|", "/", "-", "\\"]):
if done:
break
- sys.stdout.write(f"\r {message}" + c)
+ sys.stdout.write(f"\r {message}{c}")
sys.stdout.flush()
time.sleep(0.1)
sys.stdout.write(f"\r {endmessage} ")
diff --git a/local_weighted_learning/local_weighted_learning.py b/local_weighted_learning/local_weighted_learning.py
index a3a911c4306..f91b4ba7057 100644
--- a/local_weighted_learning/local_weighted_learning.py
+++ b/local_weighted_learning/local_weighted_learning.py
@@ -32,10 +32,9 @@ def local_weight(
Return the weighted matrix.
"""
weight = weighted_matrix(point, training_data_x, bandwidth)
- W = (training_data.T * (weight * training_data)).I * (
+ return (training_data.T * (weight * training_data)).I * (
training_data.T * weight * training_data_y.T
)
- return W
def local_weight_regression(
@@ -81,8 +80,7 @@ def get_preds(training_data: np.mat, mcol_b: np.mat, tau: float) -> np.ndarray:
"""
Get predictions with minimum error for each training data
"""
- ypred = local_weight_regression(training_data, mcol_b, tau)
- return ypred
+ return local_weight_regression(training_data, mcol_b, tau)
def plot_preds(
diff --git a/logs.py b/logs.py
index 37519f55011..51fcb5efd4e 100644
--- a/logs.py
+++ b/logs.py
@@ -17,11 +17,7 @@
for files in os.listdir(logsdir): # Find all the files in the directory
if files.endswith(".log"): # Check to ensure the files in the directory end in .log
- files1 = (
- files + "." + strftime("%Y-%m-%d") + ".zip"
- ) # Create the Variable files1, this is the files in the directory, then we add a suffix with the date and the zip extension
+ files1 = f"{files}." + strftime("%Y-%m-%d") + ".zip"
os.chdir(logsdir) # Change directory to the logsdir
- os.system(
- zip_program + " " + files1 + " " + files
- ) # Zip the logs into dated zip files for each server. - 1.1
+ os.system(f"{zip_program} {files1} {files}")
os.remove(files) # Remove the original log files
diff --git a/magic8ball.py b/magic8ball.py
index 1ce9dc39a69..b117ae269a2 100644
--- a/magic8ball.py
+++ b/magic8ball.py
@@ -24,7 +24,7 @@
]
print("Hi! I am the magic 8 ball, what's your name?")
name = input()
-print("Hello!" + name)
+print(f"Hello!{name}")
def magic8Ball():
diff --git a/mapit.py b/mapit.py
index 53d0cd61014..7170870d840 100644
--- a/mapit.py
+++ b/mapit.py
@@ -7,4 +7,4 @@
address = pyperclip.paste()
else:
address = input("enter your palce")
-webbrowser.open("https://www.google.com/maps/place/" + address)
+webbrowser.open(f"https://www.google.com/maps/place/{address}")
diff --git a/meme_maker.py b/meme_maker.py
index 7cb4b550701..0c90db92f6f 100644
--- a/meme_maker.py
+++ b/meme_maker.py
@@ -11,12 +11,11 @@ def input_par():
print("Enter the color for the text(r, g, b): ")
color_value = [int(i) for i in input().split(" ")]
return text, size, color_value
- pass
def main():
path_to_image = sys.argv[1]
- image_file = Image.open(path_to_image + ".jpg")
+ image_file = Image.open(f"{path_to_image}.jpg")
image_file = image_file.convert("RGBA")
pixdata = image_file.load()
@@ -47,8 +46,7 @@ def main():
print("Enter the file name: ")
file_name = str(input())
- image_file.save(file_name + ".jpg")
- pass
+ image_file.save(f"{file_name}.jpg")
if __name__ == "__main__":
diff --git a/memorygame.py b/memorygame.py
index 9266a2cd54e..8223f3d6305 100644
--- a/memorygame.py
+++ b/memorygame.py
@@ -15,7 +15,7 @@ def square(x, y):
down()
color("black", "white")
begin_fill()
- for count in range(4):
+ for _ in range(4):
forward(50)
left(90)
end_fill()
diff --git a/merge.py b/merge.py
index 424cf1e0527..8e04f04a687 100644
--- a/merge.py
+++ b/merge.py
@@ -28,11 +28,11 @@ def merge():
with open(resultfile, "w") as writefile:
for csvfile in csvfiles:
with open(csvfile) as readfile:
- print("File {} readed.".format(csvfile))
+ print(f"File {csvfile} readed.")
# do the read and write
writefile.write(readfile.read() + "\n")
- print("\nFile {} wrote.".format(resultfile))
+ print(f"\nFile {resultfile} wrote.")
# the main program
diff --git a/mobilePhoneSpecsScrapper.py b/mobilePhoneSpecsScrapper.py
index 1578942f8dc..53d593cc1a9 100644
--- a/mobilePhoneSpecsScrapper.py
+++ b/mobilePhoneSpecsScrapper.py
@@ -18,7 +18,7 @@ def __init__(self):
# Folder name on which files going to save.
self.new_folder_name = "GSMArenaDataset"
# It create the absolute path of the GSMArenaDataset folder.
- self.absolute_path = os.getcwd().strip() + "/" + self.new_folder_name
+ self.absolute_path = f"{os.getcwd().strip()}/{self.new_folder_name}"
def crawl_html_page(self, sub_url):
@@ -27,9 +27,7 @@ def crawl_html_page(self, sub_url):
# Handing the connection error of the url.
try:
page = requests.get(url)
- # It parses the html data from requested url.
- soup = BeautifulSoup(page.text, "html.parser")
- return soup
+ return BeautifulSoup(page.text, "html.parser")
except ConnectionError as err:
print("Please check your network connection and re-run the script.")
@@ -42,13 +40,11 @@ def crawl_html_page(self, sub_url):
def crawl_phone_urls(self):
phones_urls = []
for i in range(1, 238): # Right now they have 237 page of phone data.
- print(self.url + "page/" + str(i))
- soup = self.crawl_html_page(self.url + "page/" + str(i))
+ print(f"{self.url}page/{str(i)}")
+ soup = self.crawl_html_page(f"{self.url}page/{str(i)}")
table = soup.findAll("div", {"class": "stream-item"})
table_a = [k.find("a") for k in table]
- for a in table_a:
- temp = a["href"]
- phones_urls.append(temp)
+ phones_urls.extend(a["href"] for a in table_a)
return phones_urls
def crawl_phones_models_specification(self, li):
@@ -88,7 +84,7 @@ def crawl_phones_models_specification(self, li):
"battery": battery,
"os": os,
}
- with open(obj.absolute_path + "-PhoneSpecs.json", "w+") as of:
+ with open(f"{obj.absolute_path}-PhoneSpecs.json", "w+") as of:
json.dump(phone_data, of)
except Exception as error:
print(f"Exception happened : {error}")
@@ -101,7 +97,7 @@ def crawl_phones_models_specification(self, li):
try:
# Step 1: Scrape links to all the individual phone specs page and save it so that we don't need to run it again.
phone_urls = obj.crawl_phone_urls()
- with open(obj.absolute_path + "-Phoneurls.json", "w") as of:
+ with open(f"{obj.absolute_path}-Phoneurls.json", "w") as of:
json.dump(phone_urls, of)
# Step 2: Iterate through all the links from the above execution and run the next command
diff --git a/move_files_over_x_days.py b/move_files_over_x_days.py
index 50b13762024..1abe50c902b 100644
--- a/move_files_over_x_days.py
+++ b/move_files_over_x_days.py
@@ -41,9 +41,7 @@
)
args = args_parser.parse_args()
-if args.days < 0:
- args.days = 0
-
+args.days = max(args.days, 0)
src = args.src # Set the source directory
dst = args.dst # Set the destination directory
days = args.days # Set the number of days
@@ -53,8 +51,5 @@
os.mkdir(dst)
for f in os.listdir(src): # Loop through all the files in the source directory
- if (
- os.stat(f).st_mtime < now - days * 86400
- ): # Work out how old they are, if they are older than 240 days old
- if os.path.isfile(f): # Check it's a file
- shutil.move(f, dst) # Move the files
+ if (os.stat(f).st_mtime < now - days * 86400) and os.path.isfile(f):
+ shutil.move(f, dst) # Move the files
diff --git a/nasa_apod_with_requests/run.py b/nasa_apod_with_requests/run.py
index 4d8048d022c..d100009554b 100644
--- a/nasa_apod_with_requests/run.py
+++ b/nasa_apod_with_requests/run.py
@@ -14,11 +14,11 @@
print(img_.headers["content-type"], img_.headers["content-length"])
content_type = img_.headers["content-type"]
-if img_.status_code == 200 and (
- content_type == "image/jpeg"
- or content_type == "image/gif"
- or content_type == "image/png"
-):
+if img_.status_code == 200 and content_type in [
+ "image/jpeg",
+ "image/gif",
+ "image/png",
+]:
ext = img_.headers["content-type"][6:]
if not os.path.exists("img/"):
os.mkdir("img/")
diff --git a/new.py b/new.py
index 9df00e5faaa..07f085bf594 100644
--- a/new.py
+++ b/new.py
@@ -37,7 +37,7 @@ def Times_of_India(userInput, ua):
bol = input("For more details ->(y) (y/n) :: ")
if bol == "y":
url += data1.get("href")
- print("%s" % url)
+ print(f"{url}")
webbrowser.open(url)
@@ -65,7 +65,7 @@ def india_today(userInput, ua):
k += 1
print(bold_start, data1[j].get_text(), bold_end)
bol = input("\nFor more details ->(y) (y/n) :: ")
- if bol == "y" or bol == "Y":
+ if bol in ["y", "Y"]:
data2 = data[i].find("a")
url = data2.get("href")
webbrowser.open(url)
@@ -126,12 +126,5 @@ def india_today(userInput, ua):
else:
print("\nThank you", "\U0001f600")
- elif say == 2:
- length = india_today(userInput, ua)
-
- if length == 0:
- print("Sorry No news")
- else:
- print("\nThank you", "\U0001f600")
else:
print("Sorry", "\N{expressionless face}")
diff --git a/new_pattern.py b/new_pattern.py
index e9ebc1c257c..7c90642a792 100644
--- a/new_pattern.py
+++ b/new_pattern.py
@@ -17,7 +17,7 @@ def pattern(lines):
for i in reversed(range(lines)):
nxt_pattern = "$"*t
pattern = "@"*(i+1)
- final_pattern = pattern + " n " + nxt_pattern
+ final_pattern = f"{pattern} n {nxt_pattern}"
print(final_pattern)
t = t +1
diff --git a/new_script.py b/new_script.py
index 7326bed8c4e..0e83d50eaf9 100644
--- a/new_script.py
+++ b/new_script.py
@@ -25,22 +25,21 @@
if "-h" in sys.argv or "--h" in sys.argv or "-help" in sys.argv or "--help" in sys.argv:
print(text)
sys.exit()
+elif "-python" in sys.argv[1]:
+ config_file = "python.cfg"
+ extension = ".py"
+elif "-bash" in sys.argv[1]:
+ config_file = "bash.cfg"
+ extension = ".bash"
+elif "-ksh" in sys.argv[1]:
+ config_file = "ksh.cfg"
+ extension = ".ksh"
+elif "-sql" in sys.argv[1]:
+ config_file = "sql.cfg"
+ extension = ".sql"
else:
- if "-python" in sys.argv[1]:
- config_file = "python.cfg"
- extension = ".py"
- elif "-bash" in sys.argv[1]:
- config_file = "bash.cfg"
- extension = ".bash"
- elif "-ksh" in sys.argv[1]:
- config_file = "ksh.cfg"
- extension = ".ksh"
- elif "-sql" in sys.argv[1]:
- config_file = "sql.cfg"
- extension = ".sql"
- else:
- print("Unknown option - " + text)
- sys.exit()
+ print(f"Unknown option - {text}")
+ sys.exit()
confdir = os.getenv("my_config")
scripts = os.getenv("scripts")
diff --git a/news_articles__scraper.py b/news_articles__scraper.py
index 6c6360460cf..0b500f2920b 100644
--- a/news_articles__scraper.py
+++ b/news_articles__scraper.py
@@ -9,6 +9,7 @@
***Uncomment the line to install newspaper3k first***
"""
+
# ! pip install newspaper3k
import pickle
@@ -26,7 +27,7 @@
# Extracting links for all the pages (1 to 158) of boomlive fake news section
fakearticle_links = []
for i in range(1, 159):
- url = "https://www.boomlive.in/fake-news/" + str(i)
+ url = f"https://www.boomlive.in/fake-news/{str(i)}"
try:
# this might throw an exception if something goes wrong.
page = requests.get(url)
@@ -100,8 +101,6 @@
article.nlp()
except Exception as error:
print(f"exception : {error}")
- pass
-
# Scrape the contents of article
title.append(article.title) # extracts the title of the article
text.append(article.text) # extracts the whole text of article
@@ -155,7 +154,7 @@
# Extracting links for all the pages (2 to 125) of boomlive fake news section
for i in range(2, 126):
- url = "https://timesofindia.indiatimes.com/news/" + str(i)
+ url = f"https://timesofindia.indiatimes.com/news/{str(i)}"
try:
# send requests
diff --git a/next_number.py b/next_number.py
index 30a935742b3..b5f9443fe24 100644
--- a/next_number.py
+++ b/next_number.py
@@ -1,6 +1,5 @@
-x, li, small, maxx, c = input(), list(), 0, 0, 1
-for i in range(len(x)):
- li.append(int(x[i]))
+x, li, small, maxx, c = input(), [], 0, 0, 1
+li.extend(int(x[i]) for i in range(len(x)))
for i in range(len(li) - 1, -1, -1):
if i == 0:
print("No Number Possible")
@@ -16,5 +15,5 @@
li[small], li[maxx] = li[maxx], li[small]
li = li[: small + 1] + sorted(li[small + 1 :])
if c:
- for i in range(len(li)):
- print(li[i], end="")
+ for item in li:
+ print(item, end="")
diff --git a/nmap_scan.py b/nmap_scan.py
index 72f4b078e96..716a1acb254 100644
--- a/nmap_scan.py
+++ b/nmap_scan.py
@@ -18,7 +18,7 @@ def nmapScan(tgtHost, tgtPort): # Create the function, this fucntion does the s
nmScan = nmap.PortScanner()
nmScan.scan(tgtHost, tgtPort)
state = nmScan[tgtHost]["tcp"][int(tgtPort)]["state"]
- print("[*] " + tgtHost + " tcp/" + tgtPort + " " + state)
+ print(f"[*] {tgtHost} tcp/{tgtPort} {state}")
def main(): # Main Program
@@ -31,7 +31,7 @@ def main(): # Main Program
tgtHost = options.tgtHost
tgtPorts = str(options.tgtPort).split(",")
- if (tgtHost == None) | (tgtPorts[0] == None):
+ if (tgtHost is None) | (tgtPorts[0] is None):
print(parser.usage)
exit(0)
diff --git a/notepad/notepad_support.py b/notepad/notepad_support.py
index 7851ca9991a..0ffd8b920ea 100644
--- a/notepad/notepad_support.py
+++ b/notepad/notepad_support.py
@@ -123,7 +123,7 @@ def search_button(p1):
try:
cursor.execute(sql_command)
results = cursor.fetchall()
- w.errorOutput.configure(text=str(len(results)) + " results")
+ w.errorOutput.configure(text=f"{len(results)} results")
index = 0
if index >= 0 and index < len(results):
w.outputNotice.delete(1.0, END)
diff --git a/nslookup_check.py b/nslookup_check.py
index 4ae57f84cfc..3451e7de371 100644
--- a/nslookup_check.py
+++ b/nslookup_check.py
@@ -11,6 +11,4 @@
import subprocess # Import the subprocess module
for server in open("server_list.txt"): # Open the file and read each line
- subprocess.Popen(
- ("nslookup " + server)
- ) # Run the nslookup command for each server in the list
+ subprocess.Popen(f"nslookup {server}")
diff --git a/oneeven.py b/oneeven.py
index 0c0a8c52530..147ab8b702f 100644
--- a/oneeven.py
+++ b/oneeven.py
@@ -2,9 +2,6 @@
maximum = int(input(" Please Enter the Maximum Value : "))
-number = 1
-
-while number <= maximum:
+for number in range(1, maximum + 1):
if number % 2 == 0:
print("{0}".format(number))
- number = number + 1
diff --git a/other_pepole/get_ip_gui b/other_pepole/get_ip_gui
index 5728697ac5b..47dd3620cda 100755
--- a/other_pepole/get_ip_gui
+++ b/other_pepole/get_ip_gui
@@ -13,7 +13,7 @@ def get_wan_ip():
try:
# get ip from http://ipecho.net/plain as text
wan_ip = urlopen('http://ipecho.net/plain').read().decode('utf-8')
- res.configure(text='Wan IP is : ' + wan_ip, fg='#600')
+ res.configure(text=f'Wan IP is : {wan_ip}', fg='#600')
except:
res.configure(text='Problem in source : http://ipecho.net/plain', fg='red')
@@ -22,7 +22,7 @@ def get_wan_ip():
def get_local_ip():
try:
lan_ip = (socket.gethostbyname(socket.gethostname()))
- res.configure(text='Local IP is : ' + lan_ip, fg='#600')
+ res.configure(text=f'Local IP is : {lan_ip}', fg='#600')
except:
res.configure(text='Unkown Error', fg='#red')
# **************** about control button *****************#
diff --git a/passwordGen.py b/passwordGen.py
index 357c14619fc..7a49b1ddf79 100644
--- a/passwordGen.py
+++ b/passwordGen.py
@@ -8,10 +8,10 @@
passLen = 10 # actual generated password length will be this length + 1
myPass = ""
-for i in range(passLen):
+for _ in range(passLen):
while (len(myPass)) <= 2:
index = random.randrange(len(lChars))
- myPass = myPass + lChars[index]
+ myPass += lChars[index]
myPassLen = len(myPass)
while (len(myPass)) <= 5:
index = random.randrange(len(digits))
diff --git a/password_checker.py b/password_checker.py
index afc5f7203ba..e5b6203bbd7 100644
--- a/password_checker.py
+++ b/password_checker.py
@@ -3,14 +3,14 @@
def IInd_func():
count1=0
- for j in range(5):
+ for _ in range(5):
a=0
count=0
user_pwd = input("") #password you remember
for i in range(len(pwd)):
if user_pwd[i] == pwd[a]: #comparing remembered pwd with fixed pwd
a +=1
- count+=1
+ count+=1
if count==len(pwd):
print("correct pwd")
break
diff --git a/password_cracker.py b/password_cracker.py
index 3581fcc39f0..0e4bd9c01a6 100644
--- a/password_cracker.py
+++ b/password_cracker.py
@@ -22,13 +22,13 @@
def testPass(cryptPass): # Start the function
- salt = cryptPass[0:2]
+ salt = cryptPass[:2]
dictFile = open("dictionary.txt", "r") # Open the dictionary file
- for word in dictFile.readlines(): # Scan through the file
+ for word in dictFile:
word = word.strip("\n")
cryptWord = crypt.crypt(word, salt) # Check for password in the file
if cryptWord == cryptPass:
- print("[+] Found Password: " + word + "\n")
+ print(f"[+] Found Password: {word}" + "\n")
return
print("[-] Password Not Found.\n")
return
@@ -36,11 +36,11 @@ def testPass(cryptPass): # Start the function
def main():
passFile = open("passwords.txt") # Open the password file
- for line in passFile.readlines(): # Read through the file
+ for line in passFile:
if ":" in line:
user = line.split(":")[0]
cryptPass = line.split(":")[1].strip(" ") # Prepare the user name etc
- print("[*] Cracking Password For: " + user)
+ print(f"[*] Cracking Password For: {user}")
testPass(cryptPass) # Call it to crack the users password
diff --git a/password_manager.py b/password_manager.py
index cbbbcf87ef2..baac1aa24e7 100644
--- a/password_manager.py
+++ b/password_manager.py
@@ -48,14 +48,14 @@ def update_password(service_, password_):
)
conn.execute(command)
conn.commit()
- print(service_ + " password updated successfully.")
+ print(f"{service_} password updated successfully.")
def delete_service(service_):
command = 'DELETE from STORE where SERVICE = "' + service_ + '"'
conn.execute(command)
conn.commit()
- print(service_ + " deleted from the database successfully.")
+ print(f"{service_} deleted from the database successfully.")
def get_all():
@@ -74,11 +74,10 @@ def get_all():
def is_service_present(service_):
cursor_.execute("SELECT SERVICE from STORE where SERVICE = ?", (service_,))
data = cursor_.fetchall()
- if len(data) == 0:
- print("There is no service named %s" % service_)
- return False
- else:
+ if len(data) != 0:
return True
+ print(f"There is no service named {service_}")
+ return False
if connect == ADMIN_PASSWORD:
@@ -124,14 +123,13 @@ def is_service_present(service_):
add_password(service, username, password)
print("\n" + service.capitalize() + " password stored\n")
else:
- print("Service named {} already exists.".format(service))
+ print(f"Service named {service} already exists.")
elif input_ == "get":
service = input("What is the name of the service?\n")
- flag = is_service_present(service)
- if flag:
+ if flag := is_service_present(service):
username, password = get_password(service)
- print(service.capitalize() + " Details")
+ print(f"{service.capitalize()} Details")
print("Username : ", username)
print("Password : ", password)
@@ -139,20 +137,16 @@ def is_service_present(service_):
service = input("What is the name of the service?\n")
if service == "":
print("Service is not entered.")
- else:
- flag = is_service_present(service)
- if flag:
- password = getpass("Enter new password : ")
- update_password(service, password)
+ elif flag := is_service_present(service):
+ password = getpass("Enter new password : ")
+ update_password(service, password)
elif input_ == "delete":
service = input("What is the name of the service?\n")
if service == "":
print("Service is not entered.")
- else:
- flag = is_service_present(service)
- if flag:
- delete_service(service)
+ elif flag := is_service_present(service):
+ delete_service(service)
elif input_ == "getall":
get_all()
diff --git a/ph_email.py b/ph_email.py
index 8656d489ce2..7e05030f2f3 100755
--- a/ph_email.py
+++ b/ph_email.py
@@ -42,18 +42,9 @@
text = pyperclip.paste() # retrieve text from clipboard
-matches = [] # list to store numbers and emails
-
-# ph[1] means second item of the group-wise tuple
-# which is returned by findall function
-# same applies to email
-
-for ph in find_phone.findall(text):
- matches.append(ph[1])
-
-for em in find_email.findall(text):
- matches.append(em[0])
+matches = [ph[1] for ph in find_phone.findall(text)]
+matches.extend(em[0] for em in find_email.findall(text))
# display number of matches
print(f"{len(matches)} matches found")
diff --git a/ping_servers.py b/ping_servers.py
index bce734e45e9..78ce208b6e1 100644
--- a/ping_servers.py
+++ b/ping_servers.py
@@ -59,16 +59,14 @@
site = "bromley" # Set the variable site to bromley
logdir = os.getenv("logs") # Set the variable logdir by getting the OS environment logs
-logfile = (
- "ping_" + appgroup + "_" + site + ".log"
-) # Set the variable logfile, using the arguments passed to create the logfile
+logfile = f"ping_{appgroup}_{site}.log"
logfilename = os.path.join(
logdir, logfile
) # Set the variable logfilename by joining logdir and logfile together
confdir = os.getenv(
"my_config"
) # Set the variable confdir from the OS environment variable - 1.2
-conffile = appgroup + "_servers_" + site + ".txt" # Set the variable conffile - 1.2
+conffile = f"{appgroup}_servers_{site}.txt"
conffilename = os.path.join(
confdir, conffile
) # Set the variable conffilename by joining confdir and conffile together - 1.2
@@ -79,13 +77,9 @@
myping + server, shell=True, stdout=f, stderr=subprocess.STDOUT
) # Run the ping command for each server in the list.
if ret == 0: # Depending on the response
- f.write(
- server.strip() + " is alive" + "\n"
- ) # Write out that you can receive a reponse
+ f.write(f"{server.strip()} is alive" + "\n")
else:
- f.write(
- server.strip() + " did not respond" + "\n"
- ) # Write out you can't reach the box
+ f.write(f"{server.strip()} did not respond" + "\n")
print("\n\tYou can see the results in the logfile : " + logfilename)
# Show the location of the logfile
diff --git a/ping_subnet.py b/ping_subnet.py
index e8eb28d933f..56902a10bf7 100644
--- a/ping_subnet.py
+++ b/ping_subnet.py
@@ -30,19 +30,17 @@
len(sys.argv) < 2
): # If no arguments are passed then display the help and instructions on how to run the script
sys.exit(
- " You need to supply the first octets of the address Usage : "
- + filename
- + " 111.111.111"
+ f" You need to supply the first octets of the address Usage : {filename} 111.111.111"
)
- subnet = sys.argv[1] # Set the variable subnet as the three octets you pass it
if os.name == "posix": # Check the os, if it's linux then
myping = "ping -c 2 " # This is the ping command
elif os.name in ("nt", "dos", "ce"): # Check the os, if it's windows then
myping = "ping -n 2 " # This is the ping command
- f = open("ping_" + subnet + ".log", "w") # Open a logfile
+ subnet = sys.argv[1]
+ f = open(f"ping_{subnet}.log", "w")
for ip in range(2, 255): # Set the ip variable for the range of numbers
ret = subprocess.call(
myping + str(subnet) + "." + str(ip),
@@ -51,10 +49,6 @@
stderr=subprocess.STDOUT,
) # Run the command pinging the servers
if ret == 0: # Depending on the response
- f.write(
- subnet + "." + str(ip) + " is alive" + "\n"
- ) # Write out that you can receive a reponse
+ f.write(f"{subnet}.{str(ip)} is alive" + "\n")
else:
- f.write(
- subnet + "." + str(ip) + " did not respond" + "\n"
- ) # Write out you can't reach the box
+ f.write(f"{subnet}.{str(ip)} did not respond" + "\n")
diff --git a/portscanner.py b/portscanner.py
index 78fcde14a26..64b85bd8f0c 100644
--- a/portscanner.py
+++ b/portscanner.py
@@ -23,7 +23,7 @@ def connScan(tgtHost, tgtPort): # Start of the function
results = connSkt.recv(100)
screenLock.acquire() # Acquire the lock
print("[+] %d/tcp open" % tgtPort)
- print("[+] " + str(results))
+ print(f"[+] {str(results)}")
except:
screenLock.acquire()
print("[-] %d/tcp closed " % tgtPort)
@@ -61,7 +61,7 @@ def main():
(options, args) = parser.parse_args()
tgtHost = options.tgtHost
tgtPorts = str(options.tgtPort).split(",")
- if (tgtHost == None) | (tgtPorts[0] == None):
+ if (tgtHost is None) | (tgtPorts[0] is None):
print(parser.usage)
exit(0)
portScan(tgtHost, tgtPorts)
diff --git a/powerdown_startup.py b/powerdown_startup.py
index 7ce5f163c69..27e70e3105c 100644
--- a/powerdown_startup.py
+++ b/powerdown_startup.py
@@ -19,36 +19,34 @@ def windows(): # This is the function to run if it detects the OS is windows.
"startup_list.txt", "r"
): # Read the list of servers from the list
ret = subprocess.call(
- "ping -n 3 %s" % server,
+ f"ping -n 3 {server}",
shell=True,
stdout=open("NUL", "w"),
stderr=subprocess.STDOUT,
- ) # Ping the servers in turn
+ )
+
if ret == 0: # If you get a response.
- f.write(
- "%s: is alive, loading PuTTY session" % server.strip() + "\n"
- ) # Write out to the logfile
- subprocess.Popen(("putty -load " + server)) # Load the putty session
+ f.write(f"{server.strip()}: is alive, loading PuTTY session" + "\n")
+ subprocess.Popen(f"putty -load {server}")
else:
- f.write(
- "%s : did not respond" % server.strip() + "\n"
- ) # Write to the logfile if the server is down
+ f.write(f"{server.strip()} : did not respond" + "\n")
def linux():
f = open("server_startup_" + strftime("%Y-%m-%d") + ".log", "a") # Open the logfile
for server in open("startup_list.txt"): # Read the list of servers from the list
ret = subprocess.call(
- "ping -c 3 %s" % server,
+ f"ping -c 3 {server}",
shell=True,
stdout=open("/dev/null", "w"),
stderr=subprocess.STDOUT,
- ) # Ping the servers in turn
+ )
+
if ret == 0: # If you get a response.
- f.write("%s: is alive" % server.strip() + "\n") # Print a message
+ f.write(f"{server.strip()}: is alive" + "\n")
subprocess.Popen(["ssh", server.strip()])
else:
- f.write("%s: did not respond" % server.strip() + "\n")
+ f.write(f"{server.strip()}: did not respond" + "\n")
# End of the functions
diff --git a/powerup_checks.py b/powerup_checks.py
index b29cd43ba61..9725e56307f 100644
--- a/powerup_checks.py
+++ b/powerup_checks.py
@@ -45,37 +45,31 @@ def windows(): # This is the function to run if it detects the OS is windows.
for server in open(serverfile, "r"): # Read the list of servers from the list
# ret = subprocess.call("ping -n 3 %s" % server.strip(), shell=True,stdout=open('NUL', 'w'),stderr=subprocess.STDOUT) # Ping the servers in turn
ret = subprocess.call(
- "ping -n 3 %s" % server.strip(),
+ f"ping -n 3 {server.strip()}",
stdout=open("NUL", "w"),
stderr=subprocess.STDOUT,
- ) # Ping the servers in turn
+ )
+
if ret == 0: # Depending on the response
- f.write(
- "%s: is alive" % server.strip().ljust(15) + "\n"
- ) # Write out to the logfile is the server is up
+ f.write(f"{server.strip().ljust(15)}: is alive" + "\n")
else:
- f.write(
- "%s: did not respond" % server.strip().ljust(15) + "\n"
- ) # Write to the logfile if the server is down
+ f.write(f"{server.strip().ljust(15)}: did not respond" + "\n")
def linux(): # This is the function to run if it detects the OS is nix.
f = open("server_startup_" + strftime("%Y-%m-%d") + ".log", "a") # Open the logfile
for server in open(serverfile, "r"): # Read the list of servers from the list
ret = subprocess.call(
- "ping -c 3 %s" % server,
+ f"ping -c 3 {server}",
shell=True,
stdout=open("/dev/null", "w"),
stderr=subprocess.STDOUT,
- ) # Ping the servers in turn
+ )
+
if ret == 0: # Depending on the response
- f.write(
- "%s: is alive" % server.strip().ljust(15) + "\n"
- ) # Write out to the logfile is the server is up
+ f.write(f"{server.strip().ljust(15)}: is alive" + "\n")
else:
- f.write(
- "%s: did not respond" % server.strip().ljust(15) + "\n"
- ) # Write to the logfile if the server is down
+ f.write(f"{server.strip().ljust(15)}: did not respond" + "\n")
def get_servers(query): # Function to get the servers from the database
@@ -87,12 +81,11 @@ def get_servers(query): # Function to get the servers from the database
print("\nDisplaying Servers for : " + query + "\n")
while True: # While there are results
row = cursor.fetchone() # Return the results
- if row == None:
+ if row is None:
break
- f = open(serverfile, "a") # Open the serverfile
- f.write("%s\n" % str(row[0])) # Write the server out to the file
- print(row[0]) # Display the server to the screen
- f.close() # Close the file
+ with open(serverfile, "a") as f:
+ f.write("%s\n" % str(row[0])) # Write the server out to the file
+ print(row[0]) # Display the server to the screen
def main(): # Main Function
@@ -111,18 +104,17 @@ def main(): # Main Function
): # If the ask for help
print(text) # Display the help text if there isn't one passed
sys.exit(0) # Exit the script after displaying help
+ elif sys.argv[1].lower().startswith("-site1"): # If the argument is site1
+ query = "site1" # Set the variable to have the value site
+ elif (
+ sys.argv[1].lower().startswith("-site2")
+ ): # Else if the variable is bromley
+ query = "site2" # Set the variable to have the value bromley
else:
- if sys.argv[1].lower().startswith("-site1"): # If the argument is site1
- query = "site1" # Set the variable to have the value site
- elif (
- sys.argv[1].lower().startswith("-site2")
- ): # Else if the variable is bromley
- query = "site2" # Set the variable to have the value bromley
- else:
- print(
- "\n[-] Unknown option [-] " + text
- ) # If an unknown option is passed, let the user know
- sys.exit(0)
+ print(
+ "\n[-] Unknown option [-] " + text
+ ) # If an unknown option is passed, let the user know
+ sys.exit(0)
get_servers(query) # Call the get servers funtion, with the value from the argument
if os.name == "posix": # If the OS is linux.
diff --git a/primelib/primelib.py b/primelib/primelib.py
index 65856679561..7cf5243ede1 100644
--- a/primelib/primelib.py
+++ b/primelib/primelib.py
@@ -79,7 +79,7 @@ def isPrime(number):
return False
i = 5
- while i * i <= number:
+ while i**2 <= number:
if number % i == 0 or number % (i + 2) == 0:
return False
i += 6
@@ -104,7 +104,7 @@ def sieveEr(N):
# precondition
assert isinstance(N, int) and (N > 2), "'N' must been an int and > 2"
- primes = [True for x in range(N + 1)]
+ primes = [True for _ in range(N + 1)]
for p in range(2, int(sqrt(N)) + 1):
if primes[p]:
@@ -112,12 +112,7 @@ def sieveEr(N):
primes[i] = False
primes[0] = False
primes[1] = False
- ret = []
- for p in range(N + 1):
- if primes[p]:
- ret.append(p)
-
- return ret
+ return [p for p in range(N + 1) if primes[p]]
# --------------------------------
@@ -133,14 +128,7 @@ def getPrimeNumbers(N):
# precondition
assert isinstance(N, int) and (N > 2), "'N' must been an int and > 2"
- ans = []
-
- # iterates over all numbers between 2 up to N+1
- # if a number is prime then appends to list 'ans'
- for number in range(2, N + 1):
-
- if isPrime(number):
- ans.append(number)
+ ans = [number for number in range(2, N + 1) if isPrime(number)]
# precondition
assert isinstance(ans, list), "'ans' must been from type list"
@@ -168,12 +156,11 @@ def primeFactorization(number):
quotient = number
- if number == 0 or number == 1:
+ if number in [0, 1] or number not in [0, 1] and isPrime(number):
ans.append(number)
- # if 'number' not prime then builds the prime factorization of 'number'
- elif not isPrime(number):
+ else:
while quotient != 1:
@@ -183,9 +170,6 @@ def primeFactorization(number):
else:
factor += 1
- else:
- ans.append(number)
-
# precondition
assert isinstance(ans, list), "'ans' must been from type list"
@@ -314,9 +298,7 @@ def goldbach(number):
if primeNumbers[i] + primeNumbers[j] == number:
loop = False
- ans.append(primeNumbers[i])
- ans.append(primeNumbers[j])
-
+ ans.extend((primeNumbers[i], primeNumbers[j]))
j += 1
i += 1
@@ -414,14 +396,14 @@ def kgV(number1, number2):
count1 = primeFac1.count(n)
count2 = primeFac2.count(n)
- for i in range(max(count1, count2)):
+ for _ in range(max(count1, count2)):
ans *= n
else:
count1 = primeFac1.count(n)
- for i in range(count1):
+ for _ in range(count1):
ans *= n
done.append(n)
@@ -433,7 +415,7 @@ def kgV(number1, number2):
count2 = primeFac2.count(n)
- for i in range(count2):
+ for _ in range(count2):
ans *= n
done.append(n)
@@ -518,9 +500,10 @@ def getPrimesBetween(pNumber1, pNumber2):
# precondition
assert (
- isinstance(ans, list) and ans[0] != pNumber1 and ans[len(ans) - 1] != pNumber2
+ isinstance(ans, list) and ans[0] != pNumber1 and ans[-1] != pNumber2
), "'ans' must been a list without the arguments"
+
# 'ans' contains not 'pNumber1' and 'pNumber2' !
return ans
@@ -537,15 +520,10 @@ def getDivisors(n):
# precondition
assert isinstance(n, int) and (n >= 1), "'n' must been int and >= 1"
- ans = [] # will be returned.
-
- for divisor in range(1, n + 1):
-
- if n % divisor == 0:
- ans.append(divisor)
+ ans = [divisor for divisor in range(1, n + 1) if n % divisor == 0]
# precondition
- assert ans[0] == 1 and ans[len(ans) - 1] == n, "Error in function getDivisiors(...)"
+ assert ans[0] == 1 and ans[-1] == n, "Error in function getDivisiors(...)"
return ans
@@ -643,7 +621,7 @@ def fib(n):
fib1 = 1
ans = 1 # this will be return
- for i in range(n - 1):
+ for _ in range(n - 1):
tmp = ans
ans += fib1
fib1 = tmp
diff --git a/prison_break_scrapper.py b/prison_break_scrapper.py
index ad50636cd6a..f78d3098961 100644
--- a/prison_break_scrapper.py
+++ b/prison_break_scrapper.py
@@ -14,7 +14,7 @@
def download_files(links, idx):
for link in links:
subprocess.call(
- ["aria2c", "-s", "16", "-x", "16", "-d", "season" + str(idx), link]
+ ["aria2c", "-s", "16", "-x", "16", "-d", f"season{str(idx)}", link]
)
@@ -22,12 +22,14 @@ def main():
for i in range(1, 5):
r = req.get(BASE_URL + str(i) + "/1080/")
soup = bs(r.text, "html.parser")
- link_ = []
- for link in soup.find_all("a"):
- if ".mkv" in link.get("href"):
- link_.append(BASE_URL + str(i) + "/1080/" + link.get("href"))
- if not os.path.exists("season" + str(i)):
- os.makedirs("season" + str(i))
+ link_ = [
+ BASE_URL + str(i) + "/1080/" + link.get("href")
+ for link in soup.find_all("a")
+ if ".mkv" in link.get("href")
+ ]
+
+ if not os.path.exists(f"season{str(i)}"):
+ os.makedirs(f"season{str(i)}")
download_files(link_, i)
diff --git a/pscheck.py b/pscheck.py
index 36019a22b4d..5d5e57d7a97 100644
--- a/pscheck.py
+++ b/pscheck.py
@@ -24,7 +24,7 @@ def ps():
try:
# perform a ps command and assign results to a list
- output = commands.getoutput("ps -f|grep " + program)
+ output = commands.getoutput(f"ps -f|grep {program}")
proginfo = string.split(output)
# display results
diff --git a/psunotify.py b/psunotify.py
index 5e95769a916..aaaa04fc7ce 100644
--- a/psunotify.py
+++ b/psunotify.py
@@ -17,8 +17,9 @@
page = input("Enter Page No:")
# print type(page)
p = urllib2.Request(
- "https://www.google.co.in/search?q=gate+psu+2017+ext:pdf&start=" + page
+ f"https://www.google.co.in/search?q=gate+psu+2017+ext:pdf&start={page}"
)
+
ht = br.open(p)
text = '(.+?)'
patt = re.compile(text)
@@ -28,7 +29,7 @@
while int < len(urls):
urls[int] = urls[int].replace("", "")
urls[int] = urls[int].replace("", "")
- int = int + 1
+ int += 1
print(urls)
@@ -36,14 +37,9 @@
try:
temp = url.split("/")
q = temp[len(temp) - 1]
- if "http" in url:
- r = urllib2.urlopen(url)
- else:
- r = urllib2.urlopen("http://" + url)
- file = open("psu2" + q + ".pdf", "wb")
- file.write(r.read())
- file.close()
-
+ r = urllib2.urlopen(url) if "http" in url else urllib2.urlopen(f"http://{url}")
+ with open(f"psu2{q}.pdf", "wb") as file:
+ file.write(r.read())
print("Done")
except urllib2.URLError as e:
print(
diff --git a/puttylogs.py b/puttylogs.py
index 6e4c67a4784..5276181a36c 100644
--- a/puttylogs.py
+++ b/puttylogs.py
@@ -19,13 +19,9 @@
for files in os.listdir(logsdir): # Find all the files in the directory
if files.endswith(".log"): # Check to ensure the files in the directory end in .log
- files1 = (
- files + "." + strftime("%Y-%m-%d") + ".zip"
- ) # Create the Variable files1, this is the files in the directory, then we add a suffix with the date and the zip extension
+ files1 = f"{files}." + strftime("%Y-%m-%d") + ".zip"
os.chdir(logsdir) # Change directory to the logsdir
- os.system(
- zip_program + " " + files1 + " " + files
- ) # Zip the logs into dated zip files for each server. - 1.1
+ os.system(f"{zip_program} {files1} {files}")
shutil.move(
files1, zipdir
) # Move the zipped log files to the zipped_logs directory - 1.2
diff --git a/pyauto.py b/pyauto.py
index 7f9a19e0e77..2529f734cfa 100644
--- a/pyauto.py
+++ b/pyauto.py
@@ -18,7 +18,7 @@
while guess_password != password:
guess_password = random.choices(chars_list, k=len(password))
- print("<==================" + str(guess_password) + "==================>")
+ print(f"<=================={str(guess_password)}==================>")
if guess_password == list(password):
print("Your password is : " + "".join(guess_password))
diff --git a/pythonVideoDownloader.py b/pythonVideoDownloader.py
index 7bae8eac998..85a0b111d82 100644
--- a/pythonVideoDownloader.py
+++ b/pythonVideoDownloader.py
@@ -23,13 +23,12 @@ def get_video_links():
# find all links on web-page
links = soup.findAll("a")
- # filter the link sending with .mp4
- video_links = [
- archive_url + link["href"] for link in links if link["href"].endswith("mp4")
+ return [
+ archive_url + link["href"]
+ for link in links
+ if link["href"].endswith("mp4")
]
- return video_links
-
def download_video_series(video_links):
for link in video_links:
@@ -41,7 +40,7 @@ def download_video_series(video_links):
# last string
file_name = link.split("/")[-1]
- print("Downloading the file:%s" % file_name)
+ print(f"Downloading the file:{file_name}")
# create response object
r = requests.get(link, stream=True)
diff --git a/python_sms.py b/python_sms.py
index b5e578b3b86..ef456c72741 100644
--- a/python_sms.py
+++ b/python_sms.py
@@ -20,7 +20,7 @@
dbfile = "database/maindatabase.db"
master_db = os.path.join(dropbox, dbfile)
-f = open(scripts + "/output/student.txt", "a")
+f = open(f"{scripts}/output/student.txt", "a")
tdate = strftime("%d-%m")
@@ -30,7 +30,7 @@
cursor.execute(loc_stmt)
while True:
row = cursor.fetchone()
- if row == None:
+ if row is None:
break
sname = row[0]
snumber = row[1]
diff --git a/quote.py b/quote.py
index ed3b1b1317f..9ec497184bf 100644
--- a/quote.py
+++ b/quote.py
@@ -12,10 +12,7 @@
def return_quote():
response = requests.get("https://zenquotes.io/api/random")
json_data = loads(response.text)
- quote = (
- json_data[0]["q"] + " -" + json_data[0]["a"]
- ) # aligning the quote and it's author name in one string
- return quote
+ return json_data[0]["q"] + " -" + json_data[0]["a"]
quote = return_quote()
diff --git a/random-sentences.py b/random-sentences.py
index 3e6e8baacb7..c7c5bb58741 100644
--- a/random-sentences.py
+++ b/random-sentences.py
@@ -19,25 +19,16 @@ def random_int():
def random_sentence():
"""Creates random and return sentences."""
- return (
- "{} {} {} {} {} {}".format(
- article[random_int()],
- noun[random_int()],
- verb[random_int()],
- preposition[random_int()],
- article[random_int()],
- noun[random_int()],
- )
- ).capitalize()
+ return f"{article[random_int()]} {noun[random_int()]} {verb[random_int()]} {preposition[random_int()]} {article[random_int()]} {noun[random_int()]}".capitalize()
# prints random sentences
-for sentence in list(map(lambda x: random_sentence(), range(0, 20))):
+for sentence in list(map(lambda x: random_sentence(), range(20))):
print(sentence)
print("\n")
-story = (". ").join(list(map(lambda x: random_sentence(), range(0, 20))))
+story = (". ").join(list(map(lambda x: random_sentence(), range(20))))
# prints random sentences story
-print("{}".format(story))
+print(f"{story}")
diff --git a/random_file_move.py b/random_file_move.py
index f8a2af7704e..c44ac0df2a6 100644
--- a/random_file_move.py
+++ b/random_file_move.py
@@ -56,7 +56,7 @@ def check_ratio(x):
files = os.listdir(src)
size = int(ratio * len(files))
-print("Move {} files from {} to {} ? [y/n]".format(size, src, dest))
+print(f"Move {size} files from {src} to {dest} ? [y/n]")
if input().lower() == "y":
for f in random.sample(files, size):
try:
diff --git a/randomloadingmessage.py b/randomloadingmessage.py
index 71654d249b0..171a2b2b9a2 100644
--- a/randomloadingmessage.py
+++ b/randomloadingmessage.py
@@ -5,7 +5,7 @@
x = 1
-for i in range(x):
+for _ in range(x):
num = randint(1, 80)
if num == 1:
print("Reticulating splines...")
diff --git a/rangoli.py b/rangoli.py
index 75191e08546..2d2048245c4 100644
--- a/rangoli.py
+++ b/rangoli.py
@@ -12,7 +12,7 @@ def print_rangoli(n):
# Loop to print the rangoli
for i in range(1, n + 1):
- for j in range(0, i):
+ for j in range(i):
string += chr(96 + n - j)
if len(string) < width:
string += "-"
@@ -26,7 +26,7 @@ def print_rangoli(n):
string = ""
for i in range(n - 1, 0, -1):
- for j in range(0, i):
+ for j in range(i):
string += chr(96 + n - j)
if len(string) < width:
string += "-"
diff --git a/rearrange-files/rearrange-files.py b/rearrange-files/rearrange-files.py
index 5d12baec51f..91d5e732e43 100644
--- a/rearrange-files/rearrange-files.py
+++ b/rearrange-files/rearrange-files.py
@@ -12,11 +12,9 @@ def __init__(self):
self.list_of_all_files = os.listdir(self.folder_path)
def make_folder_and_return_name(self, foldername):
- if os.path.exists(foldername) is False:
- os.mkdir(foldername)
- else:
+ if os.path.exists(foldername) is not False:
foldername = foldername + str(2)
- os.mkdir(foldername)
+ os.mkdir(foldername)
return foldername
def check_folder_existance(self):
@@ -24,18 +22,20 @@ def check_folder_existance(self):
if self.list_of_all_files[i].endswith(".pdf"):
if os.path.exists("pdfs"):
shutil.move(
- self.folder_path + "/" + self.list_of_all_files[i],
- self.folder_path + "/pdfs",
+ f"{self.folder_path}/{self.list_of_all_files[i]}",
+ f"{self.folder_path}/pdfs",
)
+
else:
os.mkdir("pdfs")
elif self.list_of_all_files[i].endswith("jpg"):
if os.path.exists("jpgs"):
shutil.move(
- self.folder_path + "/" + self.list_of_all_files[i],
- self.folder_path + "/jpgs",
+ f"{self.folder_path}/{self.list_of_all_files[i]}",
+ f"{self.folder_path}/jpgs",
)
+
else:
os.mkdir("jpgs")
diff --git a/recursive-fibonacci.py b/recursive-fibonacci.py
index 5b769db6a70..2ef7daf714b 100644
--- a/recursive-fibonacci.py
+++ b/recursive-fibonacci.py
@@ -1,5 +1,2 @@
def fib(n):
- if n == 0 or n == 1:
- return n
- else:
- return fib(n - 1) + fib(n - 2)
+ return n if n in [0, 1] else fib(n - 1) + fib(n - 2)
diff --git a/recyclebin.py b/recyclebin.py
index 83222be716e..db317d43e3c 100644
--- a/recyclebin.py
+++ b/recyclebin.py
@@ -21,19 +21,16 @@ def sid2user(sid): # Start of the function to gather the user
"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" + "\\" + sid,
)
(value, type) = QueryValueEx(key, "ProfileImagePath")
- user = value.split("\\")[-1]
- return user
+ return value.split("\\")[-1]
except Exception:
return sid
def returnDir(): # Start of the function to search through the recyclebin
dirs = ["c:\\Recycler\\", "C:\\Recycled\\", "C:\\$RECYCLE.BIN\\"]
- # dirs=['c:\\$RECYCLE.BIN\\']
- for recycleDir in dirs:
- if os.path.isdir(recycleDir):
- return recycleDir
- return None
+ return next(
+ (recycleDir for recycleDir in dirs if os.path.isdir(recycleDir)), None
+ )
def findRecycled(
@@ -46,7 +43,7 @@ def findRecycled(
print("\n[*] Listing Files for User: " + str(user))
for file in files:
- print("[+] Found File: " + str(file))
+ print(f"[+] Found File: {str(file)}")
def main():
diff --git a/rock_paper_scissor_game.py b/rock_paper_scissor_game.py
index 21ab7c3ba50..d8046b5c6ed 100644
--- a/rock_paper_scissor_game.py
+++ b/rock_paper_scissor_game.py
@@ -37,13 +37,13 @@ def game(player_choice):
comp_choice = number_to_name(comp_number)
print(comp_choice)
- comp = -int(comp_number)
+ comp = -comp_number
play = int(number)
diff = (comp + play) % 5
- if diff == 1 or diff == 3:
+ if diff in [1, 3]:
print("you won!!!")
elif diff == 0:
print("draw")
- elif diff == 2 or diff == 4:
+ elif diff in [2, 4]:
print("you lose!!!")
diff --git a/rook.py b/rook.py
index 99b9b9cb6e9..649c47eb490 100644
--- a/rook.py
+++ b/rook.py
@@ -1,18 +1,17 @@
start = [0, 0]
end = [7, 7]
taken = [[1, 0], [1, 1], [1, 2], [1, 3]]
-queue = []
-queue.append([start[0], start[1], -1])
+queue = [[start[0], start[1], -1]]
visited = []
maze = []
-for i in range(8):
+for _ in range(8):
maze.append([".", ".", ".", ".", ".", ".", ".", "."])
visited.append([0, 0, 0, 0, 0, 0, 0, 0])
maze[start[0]][start[1]] = "S"
maze[end[0]][end[1]] = "E"
for i in taken:
maze[i[0]][i[1]] = "X"
-while len(queue) > 0:
+while queue:
point = queue.pop(0)
if end[0] == point[0] and end[1] == point[1]:
print(point[2] + 1)
diff --git a/rotate_string.py b/rotate_string.py
index ca1bc0babd0..c7e98c16033 100644
--- a/rotate_string.py
+++ b/rotate_string.py
@@ -1,22 +1,20 @@
def left_rotate(s, val):
- s1 = s[0:val]
+ s1 = s[:val]
s2 = s[val:]
return s2 + s1
def right_rotate(s, val):
- s1 = s[0 : len(s) - val]
+ s1 = s[:len(s) - val]
s2 = s[len(s) - val :]
return s2 + s1
def circular_rotate(s):
s = list(s)
- idx = 0
mid = len(s) // 2
- for i in reversed(range(mid, len(s))):
+ for idx, i in enumerate(reversed(range(mid, len(s)))):
s[idx], s[i] = s[i], s[idx]
- idx += 1
return s
diff --git a/rotatelist.py b/rotatelist.py
index 9603b0434a1..db7e9d4e09e 100644
--- a/rotatelist.py
+++ b/rotatelist.py
@@ -1,20 +1,13 @@
N = int(input("Enter The Size Of Array"))
list = []
-for i in range(0, N):
+for _ in range(N):
temp = int(input("Enter The Intger Numbers"))
list.append(temp)
-# Rotating Arrays Using Best Way:
-# Left Rotation Of The List.
-# Let's say we want to print list after its d number of rotations.
-
-finalList = []
d = int(input("Enter The Number Of Times You Want To Rotate The Array"))
-for i in range(0, N):
- finalList.append(list[(i + d) % N])
-
+finalList = [list[(i + d) % N] for i in range(N)]
print(finalList)
# This Method holds the timeComplexity of O(N) and Space Complexity of O(N)
diff --git a/russian_roulette.py b/russian_roulette.py
index 337f8be8a86..bb66f8a92b6 100644
--- a/russian_roulette.py
+++ b/russian_roulette.py
@@ -34,17 +34,13 @@ def main():
)
# check input
- while answer != "m" and answer != "p":
+ while answer not in ["m", "p"]:
answer = input("please enter again ('m' or 'p'): ")
# set turn
- if answer == 'm':
- turn = "player"
- else:
- turn = "pc"
-
+ turn = "player" if answer == 'm' else "pc"
# game starts
- while numOfRounds != 0 and (pc == False and player == False):
+ while numOfRounds != 0 and not pc and not player:
print(f"\nRound number {numOfRounds}/6")
time.sleep(1)
print("the gun is being loaded")
@@ -73,11 +69,7 @@ def main():
pc = True
else:
print("nothing happened phew!")
- if turn == "player": # flip the turn
- turn = "pc"
- else:
- turn = "player"
-
+ turn = "pc" if turn == "player" else "player"
time.sleep(2)
numOfRounds -= 1
diff --git a/scalg.py b/scalg.py
index d95ceb26117..11eb5e9a308 100644
--- a/scalg.py
+++ b/scalg.py
@@ -88,7 +88,7 @@ def score(source_data: list, weights: list, *args) -> list:
final_scores = [0 for i in range(len(score_lists[0]))]
# generate final scores
- for i, slist in enumerate(score_lists):
+ for slist in score_lists:
for j, ele in enumerate(slist):
final_scores[j] = final_scores[j] + ele
@@ -118,10 +118,7 @@ def score_columns(source_data: list, columns: list, weights: list) -> list:
list: Source data with the score of the set appended at as the last element.
"""
- temp_data = []
- for item in source_data:
- temp_data.append([item[c] for c in columns])
-
+ temp_data = [[item[c] for c in columns] for item in source_data]
if len(weights) > len(columns):
weights = [weights[item] for item in columns]
diff --git a/scrap_file.py b/scrap_file.py
index 7655e792cbe..ec584e6e812 100644
--- a/scrap_file.py
+++ b/scrap_file.py
@@ -10,11 +10,10 @@
def download(url):
- f = open(
+ with open(
"file_name.jpg", "wb"
- ) # opening file in write binary('wb') mode with file_name.ext ext=extension
- f.write(requests.get(url).content) # Writing File Content in file_name.jpg
- f.close()
+ ) as f:
+ f.write(requests.get(url).content) # Writing File Content in file_name.jpg
print("Succesfully Downloaded")
diff --git a/script_count.py b/script_count.py
index b7a2a0164b8..468274d11d8 100644
--- a/script_count.py
+++ b/script_count.py
@@ -52,7 +52,7 @@ def github(): # Start of the function just to count the files in the github dir
): # If the number of files is greater then 5, then print the following messages
print("\nYou have too many in here, start uploading !!!!!")
- print("You have: " + str(github_count) + " waiting to be uploaded to github!!")
+ print(f"You have: {str(github_count)} waiting to be uploaded to github!!")
elif github_count == 0: # Unless the count is 0, then print the following messages
print("\nGithub directory is all Clear")
else: # If it is any other number then print the following message, showing the number outstanding.
@@ -73,7 +73,7 @@ def development(): # Start of the function just to count the files in the devel
): # If the number of files is greater then 10, then print the following messages
print("\nYou have too many in here, finish them or delete them !!!!!")
- print("You have: " + str(dev_count) + " waiting to be finished!!")
+ print(f"You have: {str(dev_count)} waiting to be finished!!")
elif dev_count == 0: # Unless the count is 0, then print the following messages
print("\nDevelopment directory is all clear")
else:
diff --git a/sendemail.py b/sendemail.py
index 12a01080ee7..34e0372b1ed 100644
--- a/sendemail.py
+++ b/sendemail.py
@@ -32,7 +32,7 @@ def get_credentials():
flow.user_agent = APPLICATION_NAME
credentials = tools.run_flow(flow, store)
- print("Storing credentials to " + credential_path)
+ print(f"Storing credentials to {credential_path}")
return credentials
@@ -47,8 +47,7 @@ def SendMessage(sender, to, subject, msgHtml, msgPlain, attachmentFile=None):
)
else:
message1 = CreateMessageHtml(sender, to, subject, msgHtml, msgPlain)
- result = SendMessageInternal(service, "me", message1)
- return result
+ return SendMessageInternal(service, "me", message1)
def SendMessageInternal(service, user_id, message):
@@ -57,11 +56,11 @@ def SendMessageInternal(service, user_id, message):
service.users().messages().send(userId=user_id, body=message).execute()
)
- print("Message Id: %s" % message["id"])
+ print(f'Message Id: {message["id"]}')
return message
except errors.HttpError as error:
- print("An error occurred: %s" % error)
+ print(f"An error occurred: {error}")
return "Error"
return "OK"
@@ -103,20 +102,17 @@ def createMessageWithAttachment(sender, to, subject, msgHtml, msgPlain, attachme
if main_type == "text":
fp = open(attachmentFile, "rb")
msg = MIMEText(fp.read(), _subtype=sub_type)
- fp.close()
elif main_type == "image":
fp = open(attachmentFile, "rb")
msg = MIMEImage(fp.read(), _subtype=sub_type)
- fp.close()
elif main_type == "audio":
fp = open(attachmentFile, "rb")
msg = MIMEAudio(fp.read(), _subtype=sub_type)
- fp.close()
else:
fp = open(attachmentFile, "rb")
msg = MIMEBase(main_type, sub_type)
msg.set_payload(fp.read())
- fp.close()
+ fp.close()
filename = os.path.basename(attachmentFile)
msg.add_header("Content-Disposition", "attachment", filename=filename)
message.attach(msg)
diff --git a/sensors_information.py b/sensors_information.py
index 694dc302904..d9fa4dd25c7 100644
--- a/sensors_information.py
+++ b/sensors_information.py
@@ -12,10 +12,7 @@ def ip_addresses():
hostname = socket.gethostname()
addresses = socket.getaddrinfo(hostname, None)
- address_info = []
- for address in addresses:
- address_info.append((address[0].name, address[4][0]))
- return address_info
+ return [(address[0].name, address[4][0]) for address in addresses]
def cpu_load():
@@ -35,8 +32,8 @@ def show_sensors():
for address in ip_addresses():
print("IP Addresses: {0[1]} ({0[0]})".format(address))
print("CPU Load: {:.1f}".format(cpu_load()))
- print("RAM Available: {} MiB".format(ram_available() / 1024 ** 2))
- print("AC Connected: {}".format(ac_connected()))
+ print(f"RAM Available: {ram_available() / 1024**2} MiB")
+ print(f"AC Connected: {ac_connected()}")
def command_line(argv):
diff --git a/serial_scanner.py b/serial_scanner.py
index adf5ba1ee39..91f239eead7 100644
--- a/serial_scanner.py
+++ b/serial_scanner.py
@@ -20,35 +20,34 @@ def ListAvailablePorts():
# if there isn't available ports, returns an empty List
AvailablePorts = []
platform = sys.platform
- if platform == "win32":
+ if platform == "linux":
for i in range(255):
try:
- ser = serial.Serial(i, 9600)
+ ser = serial.Serial(f"/dev/ttyUSB{str(i)}")
except serial.serialutil.SerialException:
pass
else:
- AvailablePorts.append(ser.portstr)
+ AvailablePorts.append(f"/dev/ttyUSB{str(i)}")
ser.close()
-
- elif platform == "linux":
- for i in range(0, 255):
+ elif platform == "win32":
+ for i in range(255):
try:
- ser = serial.Serial("/dev/ttyUSB" + str(i))
+ ser = serial.Serial(i, 9600)
except serial.serialutil.SerialException:
pass
else:
- AvailablePorts.append("/dev/ttyUSB" + str(i))
+ AvailablePorts.append(ser.portstr)
ser.close()
+
else:
print(
"""This method was developed only for linux and windows
the current platform isn't recognised"""
)
- if len(AvailablePorts) == 0:
- print("NO port in use")
- return 0
- else:
+ if AvailablePorts:
return AvailablePorts
+ print("NO port in use")
+ return 0
# EXAMPLE OF HOW IT WORKS
diff --git a/sha1.py b/sha1.py
index 16a61e0ed75..b5aa4d8dd45 100644
--- a/sha1.py
+++ b/sha1.py
@@ -31,8 +31,7 @@ def padding(self):
Pads the input message with zeros so that padded_data has 64 bytes or 512 bits
"""
padding = b"\x80" + b"\x00" * (63 - (len(self.data) + 8) % 64)
- padded_data = self.data + padding + struct.pack(">Q", 8 * len(self.data))
- return padded_data
+ return self.data + padding + struct.pack(">Q", 8 * len(self.data))
def split_blocks(self):
"""
@@ -67,7 +66,7 @@ def final_hash(self):
for block in self.blocks:
expanded_block = self.expand_block(block)
a, b, c, d, e = self.h
- for i in range(0, 80):
+ for i in range(80):
if 0 <= i < 20:
f = (b & c) | ((~b) & d)
k = 0x5A827999
@@ -123,11 +122,11 @@ def main():
)
parser.add_argument("--file", dest="input_file", help="Hash contents of a file")
args = parser.parse_args()
- input_string = args.input_string
# In any case hash input should be a bytestring
if args.input_file:
hash_input = open(args.input_file, "rb").read()
else:
+ input_string = args.input_string
hash_input = bytes(input_string, "utf-8")
print(SHA1Hash(hash_input).final_hash())
diff --git a/simulate_memory_cpu.py b/simulate_memory_cpu.py
index 9a108fb89cc..0cd1c50794a 100644
--- a/simulate_memory_cpu.py
+++ b/simulate_memory_cpu.py
@@ -22,10 +22,9 @@ def print_help():
def mem():
pattern = re.compile('^(\d*)([M|G]B)$')
size = sys.argv[2].upper()
- match = pattern.match(size)
- if match:
- num = int(match.group(1))
- unit = match.group(2)
+ if match := pattern.match(size):
+ num = int(match[1])
+ unit = match[2]
if unit == 'MB':
s = ' ' * (num * 1024 * 1024)
else:
@@ -54,13 +53,13 @@ def cpu():
return
if cores > cpu_num:
- print("Invalid CPU Num(cpu_count="+str(cpu_num)+")")
+ print(f"Invalid CPU Num(cpu_count={str(cpu_num)})")
return
if cores is None or cores < 1:
cores = 1
- for i in range(cores):
+ for _ in range(cores):
Process(target=deadloop).start()
diff --git a/singly_linked_list.py b/singly_linked_list.py
index 500f30041e4..2fee90bb0dc 100644
--- a/singly_linked_list.py
+++ b/singly_linked_list.py
@@ -63,7 +63,7 @@ def delete_end(self):
curr = self.head
prev = None
while True:
- if curr.next == None:
+ if curr.next is None:
prev.next = None
del curr
break
diff --git a/snake.py b/snake.py
index 3c66cc599d4..88b0d033f88 100644
--- a/snake.py
+++ b/snake.py
@@ -25,9 +25,8 @@
x, y = win.getmaxyx()
key = KEY_DOWN # Initializing values
score = 0
- s = open(".snake_highscore.txt", "r")
- hscore = s.read()
- s.close()
+ with open(".snake_highscore.txt", "r") as s:
+ hscore = s.read()
snake = [[4, 10], [4, 9], [4, 8]] # Initial snake co-ordinates
food = [10, 20] # First food co-ordinates
@@ -35,9 +34,9 @@
while key != 27: # While Esc key is not pressed
win.border(0)
- win.addstr(0, 2, "Score : " + str(score) + " ") # Printing 'Score' and
+ win.addstr(0, 2, f"Score : {str(score)} ")
win.addstr(0, 27, " SNAKE ") # 'SNAKE' strings
- win.addstr(0, 37, "Highscore: " + str(hscore) + " ")
+ win.addstr(0, 37, f"Highscore: {str(hscore)} ")
win.timeout(
int(150 - (len(snake) / 5 + len(snake) / 10) % 120)
@@ -94,7 +93,7 @@
if snake[0] == food: # When snake eats the food
food = []
score += 1
- while food == []:
+ while not food:
food = [
randint(1, 18),
randint(1, 58),
@@ -110,15 +109,12 @@
except KeyboardInterrupt or EOFError:
curses.endwin()
- print("Score - " + str(score))
+ print(f"Score - {str(score)}")
if score > int(hscore):
- s = open(".snake_highscore.txt", "w")
- s.write(str(score))
- s.close()
-
+ with open(".snake_highscore.txt", "w") as s:
+ s.write(str(score))
curses.endwin()
if score > int(hscore):
- s = open(".snake_highscore.txt", "w")
- s.write(str(score))
- s.close()
-print("Score - " + str(score))
+ with open(".snake_highscore.txt", "w") as s:
+ s.write(str(score))
+print(f"Score - {str(score)}")
diff --git a/socket-programming/client.py b/socket-programming/client.py
index 851b74337fc..f337f6ffac9 100644
--- a/socket-programming/client.py
+++ b/socket-programming/client.py
@@ -10,7 +10,7 @@
s.connect((server, 12345))
# receive message from server connection successfully established
data = s.recv(1024).decode("utf-8")
-print(server + ": " + data)
+print(f"{server}: {data}")
while True:
# send message to server
@@ -18,7 +18,7 @@
s.sendall(new_data)
# receive message from server
data = s.recv(1024).decode("utf-8")
- print(server + ": " + data)
+ print(f"{server}: {data}")
# close connection
s.close()
diff --git a/socket-programming/server.py b/socket-programming/server.py
index 4986710ce9c..9631326fa7d 100644
--- a/socket-programming/server.py
+++ b/socket-programming/server.py
@@ -20,15 +20,14 @@
# show connected client
print("connected from", client_address)
# sending acknowledgement to client that you are connected
- connection.send(str("Now You are connected").encode("utf-8"))
+ connection.send("Now You are connected".encode("utf-8"))
# receiving the message
while True:
- data = connection.recv(1024).decode("utf-8")
- if data:
+ if data := connection.recv(1024).decode("utf-8"):
# message from client
print(list(client_address)[0], end="")
- print(": %s" % data)
+ print(f": {data}")
# Enter your message to send to client
new_data = str(input("You: ")).encode("utf-8")
connection.send(new_data)
diff --git a/soundex_algorithm.py b/soundex_algorithm.py
index 2be25a7477b..7bfc0c94acc 100644
--- a/soundex_algorithm.py
+++ b/soundex_algorithm.py
@@ -2,7 +2,7 @@ def soundex_al(word):
cap_word = word.upper() # convert the word to uppercase
return_val = ""
- return_val = "" + cap_word[0] # get the first letter of the word
+ return_val = f"{cap_word[0]}"
# dictonary to give values to the letters
code_dict = {"BFPV": "1", "CGJKQSXZ": "2", "DT": "3", "L": "4", "MN": "5", "R": "6"}
@@ -18,18 +18,16 @@ def soundex_al(word):
# get the values from the 'code_dict' and create the soundex code
for char in temp:
- for key in code_dict.keys():
- if char in key:
- code = code_dict[key]
- if code != return_val[-1]: # Remove all pairs of consecutive digits.
- return_val += code
+ for key, code in code_dict.items():
+ if char in key and code != return_val[-1]:
+ return_val += code
return_val = return_val[:4] # crop the word to 4 charactors
# if soundex code doen't contain 4 digits. fill it with zeros
if len(return_val) < 4:
- for x in range(len(return_val), 4):
- return_val = return_val + "0"
+ for _ in range(len(return_val), 4):
+ return_val = f"{return_val}0"
# return the value
return return_val
diff --git a/spiralmatrix.py b/spiralmatrix.py
index 806c82a68fa..0f0c03f1f18 100644
--- a/spiralmatrix.py
+++ b/spiralmatrix.py
@@ -2,11 +2,8 @@
t = 1
r = 0 # r stands for row
c = 0 # c stands for column
-matrix = [[0 for x in range(n)] for y in range(n)] # to initialise the matrix
-if n % 2 == 0:
- k = n // 2
-else:
- k = int((n / 2) + 1)
+matrix = [[0 for _ in range(n)] for _ in range(n)]
+k = n // 2 if n % 2 == 0 else int((n / 2) + 1)
for i in range(k):
while c < n:
matrix[r][c] = t
diff --git a/spotifyAccount.py b/spotifyAccount.py
index a585b6abb96..dc184069661 100644
--- a/spotifyAccount.py
+++ b/spotifyAccount.py
@@ -7,18 +7,15 @@
import requests
-if platform.system() == "Windows": # checking OS
- title = "windows"
-else:
- title = "linux"
+title = "windows" if platform.system() == "Windows" else "linux"
def randomName(size=10, chars=string.ascii_letters + string.digits):
- return "".join(random.choice(chars) for i in range(size))
+ return "".join(random.choice(chars) for _ in range(size))
def randomPassword(size=14, chars=string.ascii_letters + string.digits):
- return "".join(random.choice(chars) for i in range(size))
+ return "".join(random.choice(chars) for _ in range(size))
global maxi
@@ -42,12 +39,10 @@ def update(self):
time.sleep(600)
def get_proxy(self):
- random1 = random.choice(self.splited) # choose a random proxie
- return random1
+ return random.choice(self.splited)
def FormatProxy(self):
- proxyOutput = {"https": "socks4://" + self.get_proxy()}
- return proxyOutput
+ return {"https": f"socks4://{self.get_proxy()}"}
def __init__(self):
self.splited = []
@@ -78,7 +73,7 @@ def creator():
"displayname": "Josh",
"creation_point": "https://login.app.spotify.com?utm_source=spotify&utm_medium=desktop-win32&utm_campaign=organic",
"birth_month": "12",
- "email": email + "@gmail.com",
+ "email": f"{email}@gmail.com",
"password": password,
"creation_flow": "desktop",
"platform": "desktop",
@@ -91,6 +86,7 @@ def creator():
"referrer": "",
}
+
try:
r = s.post(
@@ -99,7 +95,7 @@ def creator():
proxies=proxy1.FormatProxy(),
)
if '{"status":1,"' in r.text:
- open("created.txt", "a+").write(email + "@gmail.com:" + password + "\n")
+ open("created.txt", "a+").write(f"{email}@gmail.com:{password}" + "\n")
created += 1
if title == "windows":
system(
@@ -115,8 +111,5 @@ def creator():
maxi = int(input("How many accounts do you want to create?\n"))
maxthreads = int(input("How many Threads?\n"))
-num = 0
-
-while num < maxthreads:
- num += 1
+for _ in range(maxthreads):
threading.Thread(target=creator).start() # Start Checking Thread
diff --git a/sqlite_check.py b/sqlite_check.py
index 74403b1a0bb..0776d4a274f 100644
--- a/sqlite_check.py
+++ b/sqlite_check.py
@@ -22,12 +22,12 @@
cur = con.cursor()
cur.execute("SELECT SQLITE_VERSION()")
data = cur.fetchone()
- print("SQLite version: %s" % data)
+ print(f"SQLite version: {data}")
except lite.Error as e:
- print("Error %s:" % e.args[0])
+ print(f"Error {e.args[0]}:")
sys.exit(1)
finally:
@@ -47,6 +47,6 @@
cur.execute("SELECT name FROM sqlite_master WHERE type='table'")
while True:
row = cur.fetchone()
- if row == None:
+ if row is None:
break
print(row[0])
diff --git a/sqlite_table_check.py b/sqlite_table_check.py
index 588b80e1c6e..ec7d62fe954 100644
--- a/sqlite_table_check.py
+++ b/sqlite_table_check.py
@@ -26,14 +26,20 @@
data = cursor.fetchone()
if str(data) == "(u'3.6.21',)":
- print("\nCurrently " + master_db + " is on SQLite version: %s" % data + " - OK -\n")
+ print(
+ "\nCurrently "
+ + master_db
+ + f" is on SQLite version: {data}"
+ + " - OK -\n"
+ )
+
else:
print("\nDB On different version than master version - !!!!! \n")
conn.close()
print("\nCheckling " + master_db + " against " + config_file + "\n")
-for table in tablelist.readlines():
+for table in tablelist:
conn = sqlite3.connect(master_db)
cursor = conn.cursor()
cursor.execute(
@@ -42,6 +48,6 @@
res = cursor.fetchone()
if res[0]:
- print("[+] Table : " + table.strip() + " exists [+]")
+ print(f"[+] Table : {table.strip()} exists [+]")
else:
- print("[-] Table : " + table.strip() + " does not exist [-]")
+ print(f"[-] Table : {table.strip()} does not exist [-]")
diff --git a/stack.py b/stack.py
index d90048ccf62..29ec3f69bf2 100644
--- a/stack.py
+++ b/stack.py
@@ -3,8 +3,7 @@
# Function to create an empty stack.
# It initializes size of stack as 0
def createStack():
- stack = []
- return stack
+ return []
# Function to determine the size of the stack
@@ -40,17 +39,12 @@ def reverse(string):
stack = createStack()
# Push all characters of string to stack
- for i in range(0, n, 1):
+ for i in range(n):
push(stack, string[i])
# Making the string empty since all
# characters are saved in stack
- string = ""
-
- # Pop all characters of string and
- # put them back to string
- for i in range(0, n, 1):
- string += pop(stack)
+ string = "".join(pop(stack) for _ in range(n))
return string
@@ -58,6 +52,6 @@ def reverse(string):
# Driver program to test above functions
string = "GeeksQuiz"
string = reverse(string)
-print("Reversed string is " + string)
+print(f"Reversed string is {string}")
# This code is contributed by Yash
diff --git a/stackF_Harsh2255.py b/stackF_Harsh2255.py
index b28bf9de77a..23746157565 100644
--- a/stackF_Harsh2255.py
+++ b/stackF_Harsh2255.py
@@ -6,8 +6,7 @@
# Function to create a stack. It initializes size of stack as 0
def createStack():
- stack = []
- return stack
+ return []
# Stack is empty when stack size is 0
@@ -18,22 +17,17 @@ def isEmpty(stack):
# Function to add an item to stack. It increases size by 1
def push(stack, item):
stack.append(item)
- print(item + " pushed to stack ")
+ print(f"{item} pushed to stack ")
# Function to remove an item from stack. It decreases size by 1
def pop(stack):
- if isEmpty(stack):
- return str(-maxsize - 1) # return minus infinite
-
- return stack.pop()
+ return str(-maxsize - 1) if isEmpty(stack) else stack.pop()
# Function to return the top from stack without removing it
def peek(stack):
- if isEmpty(stack):
- return str(-maxsize - 1) # return minus infinite
- return stack[len(stack) - 1]
+ return str(-maxsize - 1) if isEmpty(stack) else stack[len(stack) - 1]
# Driver program to test above functions
@@ -41,4 +35,4 @@ def peek(stack):
push(stack, str(10))
push(stack, str(20))
push(stack, str(30))
-print(pop(stack) + " popped from stack")
+print(f"{pop(stack)} popped from stack")
diff --git a/stone_paper_scissor/main.py b/stone_paper_scissor/main.py
index 2a2166f4f47..8711c92f0f7 100644
--- a/stone_paper_scissor/main.py
+++ b/stone_paper_scissor/main.py
@@ -26,6 +26,6 @@
utils.print_hand(computer_hand, "Computer")
result = utils.judge(player_hand, computer_hand)
- print("Result: " + result)
+ print(f"Result: {result}")
else:
print("Please enter a valid number")
diff --git a/stone_paper_scissor/utils.py b/stone_paper_scissor/utils.py
index 7acd1f61d36..3d2a0d17c73 100644
--- a/stone_paper_scissor/utils.py
+++ b/stone_paper_scissor/utils.py
@@ -1,22 +1,23 @@
def validate(hand):
- if hand < 0 or hand > 2:
- return False
- return True
+ return hand >= 0 and hand <= 2
def print_hand(hand, name="Guest"):
hands = ["Rock", "Paper", "Scissors"]
- print(name + " picked: " + hands[hand])
+ print(f"{name} picked: {hands[hand]}")
def judge(player, computer):
if player == computer:
return "Draw"
- elif player == 0 and computer == 1:
- return "Lose"
- elif player == 1 and computer == 2:
- return "Lose"
- elif player == 2 and computer == 0:
+ elif (
+ player == 0
+ and computer == 1
+ or player == 1
+ and computer == 2
+ or player == 2
+ and computer == 0
+ ):
return "Lose"
else:
return "Win"
diff --git a/string_rotation.py b/string_rotation.py
index 1b38bca0fd5..e092d4c25e9 100644
--- a/string_rotation.py
+++ b/string_rotation.py
@@ -6,11 +6,11 @@
def rotate(n):
a = list(n)
- if len(a) == 0:
+ if not a:
return print([])
l = []
- for i in range(1, len(a) + 1):
- a = [a[(i + 1) % (len(a))] for i in range(0, len(a))]
+ for _ in range(1, len(a) + 1):
+ a = [a[(i + 1) % (len(a))] for i in range(len(a))]
l += ["".join(a)]
print(l)
diff --git a/sudoku.py b/sudoku.py
index 688f164caff..57cf7a71bef 100644
--- a/sudoku.py
+++ b/sudoku.py
@@ -12,12 +12,11 @@
def solve(bo):
- find = find_empty(bo)
- if not find:
- return True
- else:
+ if find := find_empty(bo):
row, col = find
+ else:
+ return True
for i in range(1, 10):
if valid(bo, i, (row, col)):
bo[row][col] = i
@@ -65,7 +64,7 @@ def print_board(bo):
if j == 8:
print(bo[i][j])
else:
- print(str(bo[i][j]) + " ", end="")
+ print(f"{str(bo[i][j])} ", end="")
def find_empty(bo):
diff --git a/swap.py b/swap.py
index 2126a7e1ae5..5ddb1e00583 100644
--- a/swap.py
+++ b/swap.py
@@ -1,14 +1,6 @@
x = 5
y = 10
-# To take inputs from the user
-# x = input('Enter value of x: ')
-# y = input('Enter value of y: ')
-
-# create a temporary variable and swap the values
-temp = x
-x = y
-y = temp
-
-print("The value of x after swapping: {}".format(x))
-print("The value of y after swapping: {}".format(y))
+x, y = y, x
+print(f"The value of x after swapping: {x}")
+print(f"The value of y after swapping: {y}")
diff --git a/text_file_replace.py b/text_file_replace.py
index 216c5916537..16128e87c5c 100644
--- a/text_file_replace.py
+++ b/text_file_replace.py
@@ -19,7 +19,7 @@ def text_file_replace(file, encoding, old, new):
lines.append(line.replace(old, new))
with open(file=file, mode="w", encoding=encoding) as fd:
fd.writelines(lines)
- print('{} occurence(s) of "{}" have been replaced with "{}"'.format(cnt, old, new))
+ print(f'{cnt} occurence(s) of "{old}" have been replaced with "{new}"')
return cnt
diff --git a/tf_idf_generator.py b/tf_idf_generator.py
index 4e99e96ce64..6df716cd3c3 100644
--- a/tf_idf_generator.py
+++ b/tf_idf_generator.py
@@ -87,11 +87,10 @@ def find_tf_idf(file_names=None, prev_file_path=None, dump_path=None):
"""
if file_names is None:
file_names = ["./../test/testdata"]
- tf_idf = (
- []
- ) # will hold a dict of word_count for every doc(line in a doc in this case)
idf = {}
+ tf_idf = []
+
# this statement is useful for altering existant tf-idf file and adding new docs in itself.(## memory is now the biggest issue)
if prev_file_path:
print(TAG, "modifying over exising file.. @", prev_file_path)
@@ -101,28 +100,25 @@ def find_tf_idf(file_names=None, prev_file_path=None, dump_path=None):
for f in file_names:
- file1 = open(
+ with open(
f, "r"
- ) # never use 'rb' for textual data, it creates something like, {b'line-inside-the-doc'}
-
- # create word_count dict for all docs
- for line in file1:
- dict = {}
- # find the amount of doc a word is in
- for i in set(line.split()):
- if i in idf:
- idf[i] += 1
- else:
- idf[i] = 1
- for word in line.split():
- # find the count of all words in every doc
- if word not in dict:
- dict[word] = 1
- else:
- dict[word] += 1
- tf_idf.append(dict)
- file1.close()
-
+ ) as file1:
+ # create word_count dict for all docs
+ for line in file1:
+ dict = {}
+ # find the amount of doc a word is in
+ for i in set(line.split()):
+ if i in idf:
+ idf[i] += 1
+ else:
+ idf[i] = 1
+ for word in line.split():
+ # find the count of all words in every doc
+ if word not in dict:
+ dict[word] = 1
+ else:
+ dict[word] += 1
+ tf_idf.append(dict)
# calculating final TF-IDF values for all words in all docs(line in a doc in this case)
for doc in tf_idf:
for key in doc:
@@ -135,26 +131,28 @@ def find_tf_idf(file_names=None, prev_file_path=None, dump_path=None):
TAG,
"Total number of unique words in corpus",
len(idf),
- "( " + paint("++" + str(len(idf) - prev_doc_count), "g") + " )"
+ "( " + paint(f"++{str(len(idf) - prev_doc_count)}", "g") + " )"
if prev_file_path
else "",
)
+
print(
TAG,
"Total number of docs in corpus:",
len(tf_idf),
- "( " + paint("++" + str(len(tf_idf) - prev_corpus_length), "g") + " )"
+ "( " + paint(f"++{str(len(tf_idf) - prev_corpus_length)}", "g") + " )"
if prev_file_path
else "",
)
+
# dump if a dir-path is given
if dump_path:
if dump_path[-8:] != "tfidfpkl":
raise Exception(
- TAG
- + "Please provide a .tfidfpkl file_path, it is the standard format of this module."
+ f"{TAG}Please provide a .tfidfpkl file_path, it is the standard format of this module."
)
+
pickle.dump(
(idf, tf_idf), open(dump_path, "wb"), protocol=pickle.HIGHEST_PROTOCOL
)
diff --git a/thired-party-haarcascade-mustache-on-face/mustache-add-on-face.py b/thired-party-haarcascade-mustache-on-face/mustache-add-on-face.py
index 0e30d89d195..9564584eed1 100644
--- a/thired-party-haarcascade-mustache-on-face/mustache-add-on-face.py
+++ b/thired-party-haarcascade-mustache-on-face/mustache-add-on-face.py
@@ -29,8 +29,8 @@
mustache2 = image_resize(mustache.copy(), width=nw)
mw, mh, mc = mustache2.shape
- for i in range(0, mw):
- for j in range(0, mh):
+ for i in range(mw):
+ for j in range(mh):
if mustache2[i, j][3] != 0: # alpha 0
roi_color[ny + int(nh / 2.0) + i, nx + j] = mustache2[i, j]
diff --git a/thired-party-haarcascade-mustache-on-face/utils.py b/thired-party-haarcascade-mustache-on-face/utils.py
index 832c2c3ff8e..068bd1b9c18 100644
--- a/thired-party-haarcascade-mustache-on-face/utils.py
+++ b/thired-party-haarcascade-mustache-on-face/utils.py
@@ -26,10 +26,8 @@ def image_resize(image, width=None, height=None, inter=cv2.INTER_AREA):
r = width / float(w)
dim = (width, int(h * r))
- # resize the image
- resized = cv2.resize(image, dim, interpolation=inter)
# return the resized image
- return resized
+ return cv2.resize(image, dim, interpolation=inter)
class CFEVideoConf(object):
diff --git a/thread_signal.py b/thread_signal.py
index 902093517ab..bdf36b62d67 100644
--- a/thread_signal.py
+++ b/thread_signal.py
@@ -14,9 +14,8 @@ def run(self):
while self.event.is_set():
print("sub thread")
sleep(2)
- else:
- print("sub thread end")
- exit()
+ print("sub thread end")
+ exit()
def handler_thread(event):
diff --git a/tic-tac-toe.py b/tic-tac-toe.py
index 8956be21237..38453517cd8 100644
--- a/tic-tac-toe.py
+++ b/tic-tac-toe.py
@@ -25,10 +25,7 @@ def DrawBoard():
# This Function Checks position is empty or not
def CheckPosition(x):
- if board[x] == " ":
- return True
- else:
- return False
+ return board[x] == " "
# This Function Checks player has won or not
diff --git a/tic_tak_toe.py b/tic_tak_toe.py
index 3138057fea0..ef08ca5292e 100644
--- a/tic_tak_toe.py
+++ b/tic_tak_toe.py
@@ -16,10 +16,7 @@ def possibilities(board):
l = []
for i in range(len(board)):
- for j in range(len(board)):
-
- if board[i][j] == 0:
- l.append((i, j))
+ l.extend((i, j) for j in range(len(board)) if board[i][j] == 0)
return l
@@ -35,14 +32,8 @@ def random_place(board, player):
# of their marks in a horizontal row
def row_win(board, player):
for x in range(len(board)):
- win = True
-
- for y in range(len(board)):
- if board[x, y] != player:
- win = False
- continue
-
- if win == True:
+ win = all(board[x, y] == player for y in range(len(board)))
+ if win:
return win
return win
@@ -51,14 +42,8 @@ def row_win(board, player):
# of their marks in a vertical row
def col_win(board, player):
for x in range(len(board)):
- win = True
-
- for y in range(len(board)):
- if board[y][x] != player:
- win = False
- continue
-
- if win == True:
+ win = all(board[y][x] == player for y in range(len(board)))
+ if win:
return win
return win
@@ -66,11 +51,8 @@ def col_win(board, player):
# Checks whether the player has three
# of their marks in a diagonal row
def diag_win(board, player):
- win = True
y = 0
- for x in range(len(board)):
- if board[x, x] != player:
- win = False
+ win = all(board[x, x] == player for x in range(len(board)))
if win:
return win
win = True
@@ -106,7 +88,7 @@ def play_game():
while winner == 0:
for player in [1, 2]:
board = random_place(board, player)
- print("Board after " + str(counter) + " move")
+ print(f"Board after {str(counter)} move")
print(board)
sleep(2)
counter += 1
@@ -117,4 +99,4 @@ def play_game():
# Driver Code
-print("Winner is: " + str(play_game()))
+print(f"Winner is: {str(play_game())}")
diff --git a/tik_tak.py b/tik_tak.py
index fb4d11601cb..37c7cb06f04 100644
--- a/tik_tak.py
+++ b/tik_tak.py
@@ -26,10 +26,7 @@ def enter_number(p1_sign, p2_sign):
global switch
global j
k = 9
- while j:
- if k == 0:
- break
-
+ while j and k != 0:
if switch == "p1":
p1_input = int(input("\nplayer 1 :- "))
if p1_input <= 0:
diff --git a/time_delta.py b/time_delta.py
index 9b153fd9707..c2958c58706 100644
--- a/time_delta.py
+++ b/time_delta.py
@@ -53,7 +53,7 @@ def time_delta(t1, t2):
t = int(input())
- for itr_t in range(t):
+ for _ in range(t):
t1 = input()
t2 = input()
diff --git a/translation_of_sizes_of_underwear_RU.py b/translation_of_sizes_of_underwear_RU.py
index 63a64e9e34e..e4fa80528dc 100644
--- a/translation_of_sizes_of_underwear_RU.py
+++ b/translation_of_sizes_of_underwear_RU.py
@@ -10,11 +10,11 @@ def my_found(req):
"XXL": (12),
"XXXL": (14),
}
- if req[0] != "XXS":
- answ = my_dict["XXS"][req[1] - 1] + my_dict[req[0]]
- else:
- answ = my_dict["XXS"][req[1] - 1]
- return answ
+ return (
+ my_dict["XXS"][req[1] - 1] + my_dict[req[0]]
+ if req[0] != "XXS"
+ else my_dict["XXS"][req[1] - 1]
+ )
country = {1: "Россия", 2: "Германия", 3: "США", 4: "Франция", 5: "Великобритания"}
diff --git a/tweeter.py b/tweeter.py
index 73a7b3ce57a..5f9c2e1c928 100644
--- a/tweeter.py
+++ b/tweeter.py
@@ -21,28 +21,18 @@
def getStatus():
lines = []
while True:
- line = input()
- if line:
+ if line := input():
lines.append(line)
else:
break
- status = "\n".join(lines)
- return status
+ return "\n".join(lines)
def tweetthis(type):
- if type == "text":
- print("Enter your tweet " + user.name)
- tweet = getStatus()
- try:
- api.update_status(tweet)
- except Exception as e:
- print(e)
- return
- elif type == "pic":
- print("Enter pic path " + user.name)
+ if type == "pic":
+ print(f"Enter pic path {user.name}")
pic = os.path.abspath(input())
- print("Enter status " + user.name)
+ print(f"Enter status {user.name}")
title = getStatus()
try:
api.update_with_media(pic, status=title)
@@ -50,6 +40,14 @@ def tweetthis(type):
print(e)
return
+ elif type == "text":
+ print(f"Enter your tweet {user.name}")
+ tweet = getStatus()
+ try:
+ api.update_status(tweet)
+ except Exception as e:
+ print(e)
+ return
print("\n\nDONE!!")
diff --git a/ultimate-phone-book/contacts.py b/ultimate-phone-book/contacts.py
index 7c53bacb28e..af9f8514623 100644
--- a/ultimate-phone-book/contacts.py
+++ b/ultimate-phone-book/contacts.py
@@ -11,19 +11,15 @@
import pickle
import os
-# get array from pickle data
-infile = open('data/pickle-main', 'rb')
-# defining array
-array = pickle.load(infile)
-infile.close()
-
+with open('data/pickle-main', 'rb') as infile:
+ # defining array
+ array = pickle.load(infile)
# get key if path exists
keyacess = False
path = 'data/pickle-key'
if os.path.isfile('data/pickle-key'):
- pklekey = open('data/pickle-key', 'rb')
- key = pickle.load(pklekey)
- pklekey.close()
+ with open('data/pickle-key', 'rb') as pklekey:
+ key = pickle.load(pklekey)
if key == 'SKD0DW99SAMXI19#DJI9':
keyacess = True
print("key found & is correct")
@@ -70,18 +66,22 @@
arraylen = len(array[fname])
# if option 1 is selected
- if a == 1:
+ if a == 0:
+ print("Saving your Data ...")
+ with open('data/pickle-main', 'wb') as outfile:
+ pickle.dump(array, outfile)
+ print("YOUR DATA HAS BEEN SAVED SUCESSFULLY!")
+ loopvar += 1
+
+ elif a == 1:
print("")
print("== YOUR CONTACT LIST ==")
print("")
- i1 = 0
# print all names
- while i1 < arraylen:
+ for i1 in range(arraylen):
print(f"{array[fname][i1]} {array[lname][i1]}, {array[number][i1]} {array[email][i1]}")
- i1 += 1
print("=======================")
- # option 2 is selected
elif a == 2:
# get a new contact
array[fname].append(input("First Name: "))
@@ -90,7 +90,6 @@
array[email].append(input("email ID: "))
arraylen += 1
- # option 3
elif a == 3:
print("which contact would you like to delete? (enter first name)")
print("enter '\nSTOP' to STOP deleting contact")
@@ -105,28 +104,21 @@
# if no cotacts found
if tempvar == 0:
print("no cantact matches first name provided")
- # if only one contact is found
elif tempvar == 1:
print("DO YOU WANT TO DELETE CONTACT")
for i in range(4):
print(array[i][rmvar])
tempinp = input("y/n? ")
- if tempinp == 'y' or tempinp == 'Y':
+ if tempinp in ['y', 'Y']:
for i in range(4):
del array[i][rmvar]
print("contact REMOVED.")
else:
print("failed to REMOVE contact")
- # if more than one contact is found
else:
print("there are more than one contact with same name")
- # TODO
-
-
-
- # if option 4 is selected
elif a == 4:
- if keyacess == True:
+ if keyacess:
sortcounter = 1
while sortcounter != 0:
# reset counter
@@ -140,21 +132,22 @@
array[j][i + 1] = temp
# add one for changing values
sortcounter += 1
- if array[fname][i].upper() == array[fname][i + 1].upper():
- # if first name are same, compare last
- if array[lname][i].upper() > array[lname][i + 1].upper():
- for j in range(4):
- temp = array[j][i]
- array[j][i] = array[j][i + 1]
- array[j][i + 1] = temp
- # add one for changing values
- sortcounter += 1
+ if (
+ array[fname][i].upper() == array[fname][i + 1].upper()
+ and array[lname][i].upper()
+ > array[lname][i + 1].upper()
+ ):
+ for j in range(4):
+ temp = array[j][i]
+ array[j][i] = array[j][i + 1]
+ array[j][i + 1] = temp
+ # add one for changing values
+ sortcounter += 1
# if no values are swapped, sortcounter = 0; no next loop
print("CONTACTS ARE NOW SORTED")
else:
print("NEED CORRECT KEY TO ENABLE THIS FEATURE")
- # option 9
elif a == 9:
if keyacess:
# change prompt settings
@@ -168,16 +161,6 @@
print("NEED CORRECT KEY TO ENABLE THIS FEATURE")
- # if option 0 is selected
- elif a == 0:
- print("Saving your Data ...")
- outfile = open('data/pickle-main', 'wb')
- pickle.dump(array, outfile)
- outfile.close()
- print("YOUR DATA HAS BEEN SAVED SUCESSFULLY!")
- loopvar += 1
-
- # if no true option is selected
else:
print("!! PLEASE ENTER VALUE FROM GIVEN INTEGER")
diff --git a/vowels.py b/vowels.py
index c4cb540b286..4811c61c0fa 100644
--- a/vowels.py
+++ b/vowels.py
@@ -6,10 +6,7 @@
def checkVowels(letter):
- for i in range(len(vowels)):
- if letter == vowels[i]:
- return True
- return False
+ return any(letter == vowels[i] for i in range(len(vowels)))
for i in range(len(string)):
diff --git a/wiki_random.py b/wiki_random.py
index 3782ea60137..cf449770c1f 100644
--- a/wiki_random.py
+++ b/wiki_random.py
@@ -31,7 +31,7 @@ def load():
jsonData = response.json()["query"]["random"]
print("10 Random generted WIKI pages...")
for idx, j in enumerate(jsonData):
- print(str(idx) + ": ", j["title"])
+ print(f"{str(idx)}: ", j["title"])
i = input(
"Which page you want to see, enter index..[r: for retry,n: exit]?"
).lower()
diff --git a/work_connect.py b/work_connect.py
index bf3d4f9ed5a..6059d40e34d 100644
--- a/work_connect.py
+++ b/work_connect.py
@@ -37,29 +37,26 @@
): # Help Menu if called
print(text) # Print the text, stored in the text variable - 1.2
sys.exit(0) # Exit the program
-else:
- if sys.argv[1].lower().startswith("-c"): # If the first argument is -c then
- passwd = sys.argv[
- 2
- ] # Set the variable passwd as the second argument passed, in this case my login password
- subprocess.Popen(
- (
- r"c:\Program Files\Checkpoint\Endpoint Connect\trac.exe connect -u username -p "
- + passwd
- )
- )
- subprocess.Popen((r"c:\geektools\puttycm.exe"))
- time.sleep(
- 15
- ) # Sleep for 15 seconds, so the checkpoint software can connect before opening mstsc
- subprocess.Popen([remote, conffilename])
- elif (
- sys.argv[1].lower().startswith("-d")
- ): # If the first argument is -d then disconnect my checkpoint session.
- subprocess.Popen(
- (r"c:\Program Files\Checkpoint\Endpoint Connect\trac.exe disconnect ")
+elif sys.argv[1].lower().startswith("-c"): # If the first argument is -c then
+ passwd = sys.argv[
+ 2
+ ] # Set the variable passwd as the second argument passed, in this case my login password
+ subprocess.Popen(
+ (
+ r"c:\Program Files\Checkpoint\Endpoint Connect\trac.exe connect -u username -p "
+ + passwd
)
- else:
- print(
- "Unknown option - " + text
- ) # If any other option is passed, then print Unknown option and the text from above - 1.2
+ )
+ subprocess.Popen((r"c:\geektools\puttycm.exe"))
+ time.sleep(
+ 15
+ ) # Sleep for 15 seconds, so the checkpoint software can connect before opening mstsc
+ subprocess.Popen([remote, conffilename])
+elif (
+ sys.argv[1].lower().startswith("-d")
+): # If the first argument is -d then disconnect my checkpoint session.
+ subprocess.Popen(
+ (r"c:\Program Files\Checkpoint\Endpoint Connect\trac.exe disconnect ")
+ )
+else:
+ print(f"Unknown option - {text}")