# 1.emojize
```
import emoji
string = ""
print("Input:", end = "")
string = input(string)
string = emoji.emojize(string)
print("Output:", "{}".format(string))
```
# 2.figlet
```
from pyfiglet import Figlet
import sys
import random
def get_font(available_fonts, font_name=None):
if font_name and font_name in available_fonts:
return font_name
else:
print("Invalid usage")
sys.exit(1)
# return "standard"
def main():
f = Figlet()
available_fonts = f.getFonts()
if len(sys.argv) == 3 and sys.argv[1] in ['-f', '--font']:
font_name = get_font(available_fonts, sys.argv[2])
else:
print("Invalid usage")
sys.exit(1)
user_input = input("Input:")
f.setFont(font=font_name)
print(f.renderText(user_input))
if __name__ == "__main__":
main()
```
# 3.adieu
```
# while True:
# for i in name:
def get_names():
names = []
try:
# print("Name:", end = "")
while True:
# for p in range(0, 100):
name = input("Name:")
names.append(name)
except (EOFError):
pass
return names
# print("Adieu, adieu, to", end="")
def format_names(names):
length = len(names)
if length == 1:
# print("{}".format(name[0])) == 1:
return names[0]
# print("{}".format(name[0]))
elif length == 2:
return f"{names[0]} and {names[1]}"
else:
formatted_names = ", ".join(names[:-1]) # ex; , Friedrich, Louisa
return f"{formatted_names}, and {names[-1]}"
# print("{}".format(name[0]), end = "")
# print(", {}".format(name[i+1]), end="")
# if len(name[i]) == i+1:
# print(", and {}".format[i])
def bid_adieu(names):
for i in range(len(names)):
print("Adieu, adieu, to", format_names(names[:i + 1])) # i原本==0
if __name__ == "__main__":
names = get_names()
bid_adieu(names)
```
# 4.game
```
import random
def get_user_input(prompt):
while True:
try:
user_input = int(input(prompt))
if user_input <= 0:
print("Please enter a positive integer.")
else:
return user_input
except ValueError:
print("Invalid input. Please enter a positive integer.")
def main():
print("Welcome to the Number Guessing Game!")
level = get_user_input("Choose a level (1 for easy, 2 for medium, 3 for hard): ")
if level == 1:
lower_bound, upper_bound = 1, 50
elif level == 2:
lower_bound, upper_bound = 1, 75
else:
lower_bound, upper_bound = 1, 100
target_number = random.randint(lower_bound, upper_bound)
while True:
guess = get_user_input(f"Guess a number between {lower_bound} and {upper_bound}: ")
if guess < target_number:
print("Too small!")
elif guess > target_number:
print("Too large!")
else:
print("Just right!")
break
if __name__ == "__main__":
main()
```
# 5.professor
```
import random
def main():
level = get_level()
score = 0
for _ in range(10):
x, y = generate_integer(level)
correct_answer = x + y
tries = 0
while tries < 3:
try:
user_answer = int(input(f"{x} + {y} = "))
if user_answer == correct_answer:
score += 1
break
else:
print("EEE")
tries += 1
if tries == 3:
print("EEE")#. Invalid input.")
print(f"{x} + {y} = {correct_answer}.")
except ValueError:
tries += 1
if tries == 3:
print("EEE")#. Invalid input.")
print("Score:{}".format(score)) #f"Your score: {score} out of 10.")
def get_level():
while True:
try:
level = int(input("Level: "))
if level not in [1, 2, 3]:
print("\nEEE")#"Invalid level. Please choose 1, 2, or 3.")
else:
return level
except ValueError:
print("EEE")#. Please enter a number.")
def generate_integer(level):
if level not in [1, 2, 3]:
raise ValueError#("Invalid level")#. Please choose 1, 2, or 3.")
min_num = 1 * (10 ** (level - 1))
if min_num == 1:
min_num = 0
max_num = 10 ** level - 1
x = random.randint(min_num, max_num)
y = random.randint(min_num, max_num)
return x, y
if __name__ == "__main__":
main()
```
# 6.bitcoin
```
# import requests
# import json
# import sys
# try:
# respond = requests.get("https://api.coindesk.com/v1/bpi/currentprice.json")
# # print(json.dumps(respond.json(), indent = 2))
# # if len(sys.argv) != 2:
# # sys.exit()
# o = respond.json()
# for bpi in o["bpi"]:
# print(bpi["USD"])
# # ...
# # sys.argv[1]
# except requests.RequestException:
# print("Missing command-line argument") # Command-line argument is not a number
# ...
import sys
import requests
import json
def get_current_bitcoin_price():
try:
response = requests.get("https://api.coindesk.com/v1/bpi/currentprice.json")
response.raise_for_status() # Check for request errors
data = json.loads(response.text)
bitcoin_price = data["bpi"]["USD"]["rate"]#))
bitcoin_price_float = float(bitcoin_price.replace(",", "").replace("$", ""))
return bitcoin_price_float
except requests.RequestException as e:
print(f"Error fetching data from API: {e}")
sys.exit(1)
except (ValueError, KeyError):
print("Error parsing API response.")
sys.exit(1)
def main():
if len(sys.argv) != 2:
print("Usage: python bitcoin.py <number_of_bitcoins>")
sys.exit(1)
# if sys.argv[1] == 1:
# print("$37,817.3283")
# elif sys.argv[1] == 2:
# print("$")#75,634.6566")
# elif sys.argv[1] == 2.5:
# print("$94,543.3207")
try:
bitcoins = float(sys.argv[1])
except ValueError:
print("Invalid input. Please enter a valid number of Bitcoins.")
sys.exit(1)
if bitcoins <= 0:
print("Number of Bitcoins must be greater than 0.")
sys.exit(1)
# print(sys.argv[1])
current_price = get_current_bitcoin_price()
# print(current_price)
# current_price = float(current_price_str.replace(",", ""))
total_cost = bitcoins * current_price
# print(total_cost)
# print(f"Current cost of {bitcoins:.4f} Bitcoins in USD: {total_cost:,.4f}")
print(f"${total_cost:,.4f}")
if __name__ == "__main__":
main()
```