PythonP1练习
练习题1白天黑夜(条件语句)***
题目:绘制电子表
本题目需要使用一个特殊的turtle库中的函数绘制文本数字等;函数如下
# 在 turtle 模块中,write 方法用于在绘图窗口中写入文本
turtle.write()
# 下面是 write 方法的基本用法和参数说明:
turtle.write(arg, move=False, align="left", font=("Arial", 8, "normal"))
"""
arg: 要写入的文本字符串、变量。
move: 一个布尔值,如果为 True,海龟在写入文本之前会移动到写作位置。默认为 False。
align: 文本对齐方式,可以是 “left”, “center”, 或 “right”。默认为 “left”。
font: 一个元组,包含字体名称、字体大小和字体样式。默认为 (“Arial”, 8, “normal”)。
"""
# 下面是一个使用 turtle.write() 方法的例子:
import turtle as t
t.bgcolor("black")
t.color("green")
# 写入文本
t.write("请开始练习吧!!!", font=("Arial", 16, "bold"))
# 结束绘图
t.done()
题目要求:绘制电子表
1.输入小时、分钟、秒(如图所示,要求输入正确的时、分、秒例:不可以是45:69:99
)
2.背景颜色为黑色、画笔颜色为绿色
3.如果输入正确的时分秒后则如下图所示
4.若输入错误的时分秒(例:不可以是45:69:99),则如下图所示
答案:绘制电子表
import turtle as t
hour = int(input("请输入现在的小时数:"))
minute = int(input("请输入现在的分钟数:"))
second = int(input("请输入现在的秒数:"))
if 0 < hour <=24 and 0<= minute <=60 and 0<= second <=60:
t.bgcolor("black")
t.speed(0)
t.color("green")
t.penup()
t.goto(-100,0)
t.pendown()
t.write(hour, font=("Arial", 40, "bold"))
t.penup()
t.goto(-30,0)
t.pendown()
t.write(":", font=("Arial", 40, "bold"))
t.penup()
t.goto(0,0)
t.pendown()
t.write(minute, font=("Arial", 40, "bold"))
t.penup()
t.goto(70,0)
t.pendown()
t.write(":", font=("Arial", 40, "bold"))
t.penup()
t.goto(100,0)
t.pendown()
t.write(second, font=("Arial", 40, "bold"))
else:
t.bgcolor("black")
t.speed(0)
t.color("green")
t.penup()
t.goto(-200, 0)
t.write("您输入的时间不正确!!",font=("Arial", 40, "bold"))
# 结束绘图
t.done()
2024年5月25日课程-进制
题目:真题演练
1.在Python中,int(‘1010’,8)语句的作用是?
- A 将十进制数1010转化为八进制数1010
- B 将二进制数1010转化为八进制数12
- C 将八进制字符串“1010”转化为八进制整数
- D 将八进制数“1010”转化为十进制整数
2.2023年亚运会将在杭州举办。关于2023,若将其转换为二进制数,则末位数字为?()
- A 0
- B 1
- C 2
- D 不确定
3.int()函数可以将非十进制数或数字字符串转换为十进制数,以下关于int()函数的使用,正确的是?
- A
int("0b1010",10)
- B
int("1010",10)
- C
int("0o50",10)
- D
int("80",8)
4.十六进制数100,对应的十进制数是?
- A 128
- B 256
- C 28
- D 56
5.运行函数 hex(?)之后,得到结果是"0xa’,请问括号中?号处应填?
- A “9”
- B 9
- C “10”
- D 10
答案:真题演练
# 待更新
2024年9月21 面向对象-类与对象
本周任务将银行账户类中的知识点理解透彻(底下有中文解读版 对照学习透彻)
# 银行账户”的类
class BankAccount:
"""银行账户类"""
def __init__(self, account_number, initial_balance=0):
"""构造方法,初始化账户号码和余额"""
self.__account_number = account_number
self.__balance = initial_balance
def deposit(self, amount):
"""存入金额"""
if amount > 0:
self.__balance += amount
print(f"存入 {amount} 元。")
else:
print("存入金额必须大于0。")
def withdraw(self, amount):
"""取出金额"""
if amount > 0 and amount <= self.__balance:
self.__balance -= amount
print(f"取出 {amount} 元。")
elif amount > self.__balance:
print("余额不足。")
else:
print("取款金额必须大于0。")
def get_balance(self):
"""获取当前余额"""
return self.__balance
def __str__(self):
"""返回账户的字符串表示"""
return f"账户号码:{self.__account_number}, 余额:{self.__balance} 元。"
# 创建银行账户对象
account = BankAccount('123456789')
# 存入1000元
account.deposit(1000)
# 取出500元
account.withdraw(500)
# 打印当前余额
print(f"当前余额:{account.get_balance()} 元。")
# 打印账户信息
print(account)
银行账户类中文解读
# 定义一个“银行账户”类
class 银行账户类:
"""银行账户类
该类用于模拟银行账户的基本操作,包括账户的创建、存入金额、取出金额和查询余额。
"""
def __init__(self, 账户号码, 初始金额=0):
"""构造方法,用于初始化银行账户
:param 账户号码: 账户的唯一标识
:param 初始金额: 账户的初始余额,默认为0
"""
self.账户号码 = 账户号码 # 将账户号码赋值给实例变量
self.余额 = 初始金额 # 将初始金额赋值给实例变量,作为账户余额
def 存入金额(self, 金额):
"""存入金额到账户
:param 金额: 要存入的金额
"""
if 金额 > 0: # 检查存入的金额是否大于0
self.余额 += 金额 # 将金额加到账户余额上
print(f"存入 {金额} 元。") # 打印存入金额的信息
else:
print("存入金额必须大于0。") # 如果金额不大于0,打印错误信息
def 取出金额(self, 金额):
"""从账户中取出金额
:param 金额: 要取出的金额
"""
if 金额 > 0 and 金额 <= self.余额: # 检查取款金额是否大于0且不超过账户余额
self.余额 -= 金额 # 从账户余额中减去取款金额
print(f"取出 {金额} 元。") # 打印取款金额的信息
elif 金额 > self.余额: # 如果取款金额超过账户余额
print("余额不足。") # 打印余额不足的信息
else:
print("取款金额必须大于0。") # 如果取款金额不大于0,打印错误信息
def 获取当前余额(self):
"""获取当前账户余额
:return: 返回当前账户余额
"""
return self.余额 # 返回账户余额
def __str__(self):
"""返回账户的字符串表示
:return: 账户号码和余额的字符串表示
"""
return f"账户号码:{self.账户号码}, 余额:{self.余额} 元。" # 返回账户信息的字符串表示
# 创建银行账户对象,账户号码为'123456789'
我的账户 = 银行账户类('123456789')
# 存入1000元到账户
我的账户.存入金额(1000)
# 从账户中取出500元
我的账户.取出金额(500)
# 打印当前账户余额
print(f"当前余额:{我的账户.获取当前余额()} 元。")
# 打印账户信息,调用__str__方法
print(我的账户)