+-
(国内首发)最新python初学者上手练习
首页 专栏 python 文章详情
0

(国内首发)最新python初学者上手练习

CoXie带你学编程 发布于 1 月 22 日
python项目三部曲,最新获取请查看我的个人资料。

Python初级练手项目

Python闹钟

DateTime模块以Python编程语言预先安装,因此您可以轻松地将其导入程序中。可以使用pip命令轻松安装playsound库。点安装playsound。希望您能够将其安装在系统中,现在让我们看看如何编写程序以使用Python创建闹钟警报。
在编写程序之前,您应该知道您还需要一个警报音,在警报时会响起。因此,您可以在公众号后台回复警报音获取各类警报音频 。现在,当我们准备好库和警报歌曲时,让我们看看如何编写程序以使用Python创建闹钟:

from datetime import datetime   
from playsound import playsound
alarm_time = input("Enter the time of alarm to be set:HH:MM:SS\n")
alarm_hour=alarm_time[0:2]
alarm_minute=alarm_time[3:5]
alarm_seconds=alarm_time[6:8]
alarm_period = alarm_time[9:11].upper()
print("Setting up alarm..")
while True:
    now = datetime.now()
    current_hour = now.strftime("%I")
    current_minute = now.strftime("%M")
    current_seconds = now.strftime("%S")
    current_period = now.strftime("%p")
    if(alarm_period==current_period):
        if(alarm_hour==current_hour):
            if(alarm_minute==current_minute):
                if(alarm_seconds==current_seconds):
                    print("Wake Up!")
                    playsound('audio.mp3')
                    break

电子邮件切片器

要使用Python创建电子邮件切片器,我们的任务是编写一个程序,该程序可以检索电子邮件的用户名和域名。例如,查看下面的图像,其中显示了“ [email protected]”的域和用户名:


因此,我们需要使用“ @”作为分隔符将电子邮件分为两个字符串。让我们看看如何使用Python分隔电子邮件和域名

email script.py
email = input("Enter Your Email: ").strip()
username = email[:email.index("@")]
domain_name = email[email.index("@")+1:]
format_ = (f"Your user name is '{username}' and your domain is '{domain_name}'")
print(format_)

最后,我们只是格式化以打印输出。上面的代码可以根据您的需要增加更多的想法。作为初学者,您必须尝试这些类型的程序以提高您的编码技能。从长远来看,它也将帮助您构建算法并提高逻辑思考的能力。

故事生成器

我们的任务是每次用户运行程序时生成一个随机故事。我将首先将故事的各个部分存储在不同的列表中,然后可以使用Random模块来选择存储在不同列表中的故事的随机部分:

import random
when = ['几年前', '昨天', '昨晚', '很久以前','20天前']
who = ['一只兔子', '一只大象', '一只老鼠', '一只乌龟','一只猫咪']
name = ['Ali', 'Miriam','daniel', 'Hoouk', 'Starwalker']
residence = ['杭州','上海', '北京', '广东', '深圳']
went = ['电影院', '大学','超市', '学校', '公园']
happened = ['交了很多朋友','吃了个汉堡', '找到一个藏宝图', '解决了一个问题', '写了本书']
print(random.choice(when) + ', ' + random.choice(who) + ' that lived in ' + random.choice(residence) + ', went to the ' + random.choice(went) + ' and ' + random.choice(happened))
在上面的代码中,可以在某些方面进行改进,但从根本上讲,它可以满足当今标准中许多安全的密码生成要求。作为Python或任何其他语言的新手,您应该继续尝试这些类型的程序,因为它们可以帮助您探索更多的功能

密码生成器

要编写Python程序来创建密码,请声明数字字符串+大写字母+小写字母+特殊字符。随机抽取用户指定长度的字符串:

import random
passlen = int(input("输入密码的长度"))
s="abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()?"
p = "".join(random.sample(s,passlen ))
print(p)
输入密码长度7
^ H0%koE

石头剪刀布的游戏

使用Python创建石头、剪刀、布的游戏,我们需要接受用户的选择,然后将其与使用Python随机模块从选择列表中获得的计算机选择进行比较,如果用户获胜,那么分数将增加1:


import random
choices = ["Rock", "Scissors", "Paper"]
computer = random.choice(choices)
player = False
cpu_score = 0
player_score = 0
while True:
    player = input("Rock,Scissors,Paper?").capitalize()
    ## 游戏状况
    if player == computer:
        print("平局!")
    elif player == "Rock":
        if computer == "Paper":
            print("你输了", computer, "covers", player)
            cpu_score+=1
        else:
            print("你赢了", player, "smashes", computer)
            player_score+=1
    elif player == "Paper":
        if computer == "Scissors":
            print(你输了!", computer, "cut", player)
            cpu_score+=1
        else:
            print("你赢了!", player, "covers", computer)
            player_score+=1
    elif player == "Scissors":
        if computer == "Rock":
            print("You lose...", computer, "smashes", player)
            cpu_score+=1
        else:
            print("你赢了!", player, "cut", computer)
            player_score+=1
    elif player=='End':
        print("Final Scores:")
        print(f"CPU:{cpu_score}")
        print(f"Plaer:{player_score}")
        break

骰子滚动模拟器

导入随机模块后,您可以访问模块中包含的所有功能。这是一个很长的列表,但是出于我们的目的,我们将使用 random.randint()函数。此函数根据我们指定的开始和结束返回一个随机整数。
\
骰子掷骰的最小值是1,最大值是6,该逻辑可用于模拟骰子掷骰。这给了我们在 random.randint()函数中使用的开始和结束值。现在,让我们看看如何使用Python模拟骰子掷骰:
#导入random模块用于随机数生成
import random

#骰子的范围
min_val = 1
max_val = 6

#to loop the rolling through user input
roll_again = "yes"

#循环
while roll_again == "yes" or roll_again == "y":
    print("Rolling The Dices...")
    print("The Values are :")
    
    #打印并生成1-6的第一个随机数
    print(random.randint(min_val, max_val))
    
    #打印并生成1-6的第二个随机数
    print(random.randint(min_val, max_val))
    
    #告诉用户再次掷骰子,除yes或者y的任何输入都会终止程序
    roll_again = input("Roll the Dices Again?") 

QR码生成器

在本节中,我将带您学习如何使用Python生成QR码的教程。要使用Python生成QR码,您只需安装一个Python库即可完成此任务

pip install pyqrcode

现在让我们看看如何使用Python编程语言创建QR代码:

import pyqrcode 
from pyqrcode import QRCode 
  
# 代表QR码的字符串
s = "https://www.youtube.com/channel/UCeO9hPCfRzqb2yTuAn713Mg"
  
# 生成QR码
url = pyqrcode.create(s) 
  
# 创建并保存命名为"myqr.png"的文件
url.svg("myyoutube.svg", scale = 8) 

使用Python打印彩色文本

使用Colorama模块,我们可以使用Python打印彩色文本。我们可以使用它并调用其内置变量,这些变量是所需ANSI代码的别名。这使我们的代码更具可读性,并且在脚本开始时调用colorama.init()后可以更好地与Windows命令提示符配合使用。

import colorama
from colorama import Fore, Back, Style
colorama.init(autoreset=True)

print(Fore.BLUE+Back.YELLOW+"Hi My name is Aman Kharwal "+ Fore.YELLOW+ Back.BLUE+"I am your Machine Learning Instructor")
print(Back.CYAN+"Hi My name is Aman Kharwal")
print(Fore.RED + Back.GREEN+ "Hi My name is Aman Kharwal")

带Python的BMI计算器

BMI是基于个人体重和身高的相对体重的量度。如今,体重指数通常用于将人分为体重过轻,超重甚至肥胖。此外,各国都采用这种方法来促进健康饮食。
Height=float(input("输入你的身高(cm)"))
Weight=float(input("输入你的体重(kg) "))
Height = Height/100
BMI=Weight/(Height*Height)
print("your Body Mass Index is: ",BMI)
if(BMI>0):
    if(BMI<=16):
        print("you are severely underweight")
    elif(BMI<=18.5):
        print("you are underweight")
    elif(BMI<=25):
        print("you are Healthy")
    elif(BMI<=30):
        print("you are overweight")
    else: print("you are severely overweight")
else:("enter valid details")

华氏温度转摄氏温度转换器

计算温度转换很简单。我们必须转换温度,因为摄氏温度和华氏温度有不同的起点。0摄氏度是32华氏度。因此,要将华氏温度转换为摄氏温度,我们只需要从华氏温度中减去32。
有时单位的大小也不同。摄氏温度将水的冰点和沸点之间的温度范围划分为100度,而华氏温度将温度范围划分为180度,因此我还将值乘以5/9将180度转换为100。
def convert(s):
    f = float(s)
    c = (f - 32) * 5/9
    return c

print(convert(78))

接收多个用户输入

Python的input()函数可帮助我们在编写程序时向用户提供输入。但是如何在终端中接受多个用户输入呢?在本文中,我将指导您如何通过使用while循环使用Python进行多个用户输入。

假设系统提示您编写一个Python程序,该程序在控制台窗口中与用户交互。您可能正在接受输入以发送到数据库,或者正在读取要在计算中使用的数字。

无论目的是什么,您都应该编写一个循环,以从键盘上键入的用户读取一个或多个用户输入,并为每个输出打印结果。换句话说,您必须编写一个经典的打印循环程序。

while True:
    reply = input("输入文本: ")
    if reply == 'stop': break
    print(reply)

罗马数字转换为小数

请记住,基数不是罗马人使用的数字,因为它们具有诸如I:1,V:5,X:10,C:100,D:500,M:1000等的计

因此,我们需要按照上述逻辑编写一个程序,以使用Python将罗马数字转换为小数。因此,让我们看一下将罗马数字转换为小数的过程:

从左到右浏览罗马数字字符串,一次检查两个相邻的字符。如果需要的话,还可以指定循环的方向,但是没有关系,只要相应地实现了比较即可。

如果左侧的值大于右侧的值,则从最终值中减去该位置的计数。否则,只需添加它。

一旦处

如果左侧的值大于右侧的值,则从最终值中减去该位置的计数。否则,只需添加它。 一旦处理完成,最终值就是罗马数字的十进制值。
tallies = {
    'I': 1,
    'V': 5,
    'X': 10,
    'L': 50,
    'C': 100,
    'D': 500,
    'M': 1000,
    # specify more numerals if you wish
}

def RomanNumeralToDecimal(romanNumeral):
    sum = 0
    for i in range(len(romanNumeral) - 1):
        left = romanNumeral[i]
        right = romanNumeral[i + 1]
        if tallies[left] < tallies[right]:
            sum -= tallies[left]
        else:
            sum += tallies[left]
    sum += tallies[romanNumeral[-1]]
    return sum

源码获取

请前往我的个人资料查看获取

python
阅读 53 发布于 1 月 22 日
赞 收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
avatar
CoXie带你学编程
186 声望
11 粉丝
关注作者
0 条评论
得票 时间
提交评论
avatar
CoXie带你学编程
186 声望
11 粉丝
关注作者
宣传栏
python项目三部曲,最新获取请查看我的个人资料。

Python初级练手项目

Python闹钟

DateTime模块以Python编程语言预先安装,因此您可以轻松地将其导入程序中。可以使用pip命令轻松安装playsound库。点安装playsound。希望您能够将其安装在系统中,现在让我们看看如何编写程序以使用Python创建闹钟警报。
在编写程序之前,您应该知道您还需要一个警报音,在警报时会响起。因此,您可以在公众号后台回复警报音获取各类警报音频 。现在,当我们准备好库和警报歌曲时,让我们看看如何编写程序以使用Python创建闹钟:

from datetime import datetime   
from playsound import playsound
alarm_time = input("Enter the time of alarm to be set:HH:MM:SS\n")
alarm_hour=alarm_time[0:2]
alarm_minute=alarm_time[3:5]
alarm_seconds=alarm_time[6:8]
alarm_period = alarm_time[9:11].upper()
print("Setting up alarm..")
while True:
    now = datetime.now()
    current_hour = now.strftime("%I")
    current_minute = now.strftime("%M")
    current_seconds = now.strftime("%S")
    current_period = now.strftime("%p")
    if(alarm_period==current_period):
        if(alarm_hour==current_hour):
            if(alarm_minute==current_minute):
                if(alarm_seconds==current_seconds):
                    print("Wake Up!")
                    playsound('audio.mp3')
                    break

电子邮件切片器

要使用Python创建电子邮件切片器,我们的任务是编写一个程序,该程序可以检索电子邮件的用户名和域名。例如,查看下面的图像,其中显示了“ [email protected]”的域和用户名:


因此,我们需要使用“ @”作为分隔符将电子邮件分为两个字符串。让我们看看如何使用Python分隔电子邮件和域名

email script.py
email = input("Enter Your Email: ").strip()
username = email[:email.index("@")]
domain_name = email[email.index("@")+1:]
format_ = (f"Your user name is '{username}' and your domain is '{domain_name}'")
print(format_)

最后,我们只是格式化以打印输出。上面的代码可以根据您的需要增加更多的想法。作为初学者,您必须尝试这些类型的程序以提高您的编码技能。从长远来看,它也将帮助您构建算法并提高逻辑思考的能力。

故事生成器

我们的任务是每次用户运行程序时生成一个随机故事。我将首先将故事的各个部分存储在不同的列表中,然后可以使用Random模块来选择存储在不同列表中的故事的随机部分:

import random
when = ['几年前', '昨天', '昨晚', '很久以前','20天前']
who = ['一只兔子', '一只大象', '一只老鼠', '一只乌龟','一只猫咪']
name = ['Ali', 'Miriam','daniel', 'Hoouk', 'Starwalker']
residence = ['杭州','上海', '北京', '广东', '深圳']
went = ['电影院', '大学','超市', '学校', '公园']
happened = ['交了很多朋友','吃了个汉堡', '找到一个藏宝图', '解决了一个问题', '写了本书']
print(random.choice(when) + ', ' + random.choice(who) + ' that lived in ' + random.choice(residence) + ', went to the ' + random.choice(went) + ' and ' + random.choice(happened))
在上面的代码中,可以在某些方面进行改进,但从根本上讲,它可以满足当今标准中许多安全的密码生成要求。作为Python或任何其他语言的新手,您应该继续尝试这些类型的程序,因为它们可以帮助您探索更多的功能

密码生成器

要编写Python程序来创建密码,请声明数字字符串+大写字母+小写字母+特殊字符。随机抽取用户指定长度的字符串:

import random
passlen = int(input("输入密码的长度"))
s="abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()?"
p = "".join(random.sample(s,passlen ))
print(p)
输入密码长度7
^ H0%koE

石头剪刀布的游戏

使用Python创建石头、剪刀、布的游戏,我们需要接受用户的选择,然后将其与使用Python随机模块从选择列表中获得的计算机选择进行比较,如果用户获胜,那么分数将增加1:


import random
choices = ["Rock", "Scissors", "Paper"]
computer = random.choice(choices)
player = False
cpu_score = 0
player_score = 0
while True:
    player = input("Rock,Scissors,Paper?").capitalize()
    ## 游戏状况
    if player == computer:
        print("平局!")
    elif player == "Rock":
        if computer == "Paper":
            print("你输了", computer, "covers", player)
            cpu_score+=1
        else:
            print("你赢了", player, "smashes", computer)
            player_score+=1
    elif player == "Paper":
        if computer == "Scissors":
            print(你输了!", computer, "cut", player)
            cpu_score+=1
        else:
            print("你赢了!", player, "covers", computer)
            player_score+=1
    elif player == "Scissors":
        if computer == "Rock":
            print("You lose...", computer, "smashes", player)
            cpu_score+=1
        else:
            print("你赢了!", player, "cut", computer)
            player_score+=1
    elif player=='End':
        print("Final Scores:")
        print(f"CPU:{cpu_score}")
        print(f"Plaer:{player_score}")
        break

骰子滚动模拟器

导入随机模块后,您可以访问模块中包含的所有功能。这是一个很长的列表,但是出于我们的目的,我们将使用 random.randint()函数。此函数根据我们指定的开始和结束返回一个随机整数。
\
骰子掷骰的最小值是1,最大值是6,该逻辑可用于模拟骰子掷骰。这给了我们在 random.randint()函数中使用的开始和结束值。现在,让我们看看如何使用Python模拟骰子掷骰:
#导入random模块用于随机数生成
import random

#骰子的范围
min_val = 1
max_val = 6

#to loop the rolling through user input
roll_again = "yes"

#循环
while roll_again == "yes" or roll_again == "y":
    print("Rolling The Dices...")
    print("The Values are :")
    
    #打印并生成1-6的第一个随机数
    print(random.randint(min_val, max_val))
    
    #打印并生成1-6的第二个随机数
    print(random.randint(min_val, max_val))
    
    #告诉用户再次掷骰子,除yes或者y的任何输入都会终止程序
    roll_again = input("Roll the Dices Again?") 

QR码生成器

在本节中,我将带您学习如何使用Python生成QR码的教程。要使用Python生成QR码,您只需安装一个Python库即可完成此任务

pip install pyqrcode

现在让我们看看如何使用Python编程语言创建QR代码:

import pyqrcode 
from pyqrcode import QRCode 
  
# 代表QR码的字符串
s = "https://www.youtube.com/channel/UCeO9hPCfRzqb2yTuAn713Mg"
  
# 生成QR码
url = pyqrcode.create(s) 
  
# 创建并保存命名为"myqr.png"的文件
url.svg("myyoutube.svg", scale = 8) 

使用Python打印彩色文本

使用Colorama模块,我们可以使用Python打印彩色文本。我们可以使用它并调用其内置变量,这些变量是所需ANSI代码的别名。这使我们的代码更具可读性,并且在脚本开始时调用colorama.init()后可以更好地与Windows命令提示符配合使用。

import colorama
from colorama import Fore, Back, Style
colorama.init(autoreset=True)

print(Fore.BLUE+Back.YELLOW+"Hi My name is Aman Kharwal "+ Fore.YELLOW+ Back.BLUE+"I am your Machine Learning Instructor")
print(Back.CYAN+"Hi My name is Aman Kharwal")
print(Fore.RED + Back.GREEN+ "Hi My name is Aman Kharwal")

带Python的BMI计算器

BMI是基于个人体重和身高的相对体重的量度。如今,体重指数通常用于将人分为体重过轻,超重甚至肥胖。此外,各国都采用这种方法来促进健康饮食。
Height=float(input("输入你的身高(cm)"))
Weight=float(input("输入你的体重(kg) "))
Height = Height/100
BMI=Weight/(Height*Height)
print("your Body Mass Index is: ",BMI)
if(BMI>0):
    if(BMI<=16):
        print("you are severely underweight")
    elif(BMI<=18.5):
        print("you are underweight")
    elif(BMI<=25):
        print("you are Healthy")
    elif(BMI<=30):
        print("you are overweight")
    else: print("you are severely overweight")
else:("enter valid details")

华氏温度转摄氏温度转换器

计算温度转换很简单。我们必须转换温度,因为摄氏温度和华氏温度有不同的起点。0摄氏度是32华氏度。因此,要将华氏温度转换为摄氏温度,我们只需要从华氏温度中减去32。
有时单位的大小也不同。摄氏温度将水的冰点和沸点之间的温度范围划分为100度,而华氏温度将温度范围划分为180度,因此我还将值乘以5/9将180度转换为100。
def convert(s):
    f = float(s)
    c = (f - 32) * 5/9
    return c

print(convert(78))

接收多个用户输入

Python的input()函数可帮助我们在编写程序时向用户提供输入。但是如何在终端中接受多个用户输入呢?在本文中,我将指导您如何通过使用while循环使用Python进行多个用户输入。

假设系统提示您编写一个Python程序,该程序在控制台窗口中与用户交互。您可能正在接受输入以发送到数据库,或者正在读取要在计算中使用的数字。

无论目的是什么,您都应该编写一个循环,以从键盘上键入的用户读取一个或多个用户输入,并为每个输出打印结果。换句话说,您必须编写一个经典的打印循环程序。

while True:
    reply = input("输入文本: ")
    if reply == 'stop': break
    print(reply)

罗马数字转换为小数

请记住,基数不是罗马人使用的数字,因为它们具有诸如I:1,V:5,X:10,C:100,D:500,M:1000等的计

因此,我们需要按照上述逻辑编写一个程序,以使用Python将罗马数字转换为小数。因此,让我们看一下将罗马数字转换为小数的过程:

从左到右浏览罗马数字字符串,一次检查两个相邻的字符。如果需要的话,还可以指定循环的方向,但是没有关系,只要相应地实现了比较即可。

如果左侧的值大于右侧的值,则从最终值中减去该位置的计数。否则,只需添加它。

一旦处

如果左侧的值大于右侧的值,则从最终值中减去该位置的计数。否则,只需添加它。 一旦处理完成,最终值就是罗马数字的十进制值。
tallies = {
    'I': 1,
    'V': 5,
    'X': 10,
    'L': 50,
    'C': 100,
    'D': 500,
    'M': 1000,
    # specify more numerals if you wish
}

def RomanNumeralToDecimal(romanNumeral):
    sum = 0
    for i in range(len(romanNumeral) - 1):
        left = romanNumeral[i]
        right = romanNumeral[i + 1]
        if tallies[left] < tallies[right]:
            sum -= tallies[left]
        else:
            sum += tallies[left]
    sum += tallies[romanNumeral[-1]]
    return sum

源码获取

请前往我的个人资料查看获取