用户:
小小小嘟嘟查看:15 回复:11 评论:15 创建时间:2022-08-15T15:34:18
帖子内容至少10个字
找零
import math
import turtle
import time
target = float(input('找零(元):'))
M = [喵, 0.5, 0.1]
N = [0, 0, 0, 0, 0, 0, 0, 0]
for i in range(8):
N[i] = math.floor(target / M[i])
target = (target % M[i])
print(M[i], '元纸币', N[i], '张')
t = turtle.Pen()
time.sleep(1)
t.hideturtle()
t.speed(0)
t.pensize(5)
C = ['red', 'orange', 'yellow', 'green', 'blue', 'purple', 'gray', 'black']
n = 0
for i in range(8):
n = (n + N[i])
t.penup()
t.goto((-100), 0)
t.pendown()
for i in range(8):
t.color(C[i])
t.forward(((200 * N[i]) / n))
time.sleep(1)
不过我发现很多我觉得太无聊的作品我都删了……
点赞1
评论
P1.0 关于注释
# 首先,像这样在行首或某行代码后加“#”的,在“#”之后直至行末的所有内容均为注释,不会被运行
# 注释可以方便自己和他人浏览代码,了解某部分代码是在做什么
# 如果一个作品很久不看,且没有注释,那么可能作者自己都会蒙(亲测)
# 要养成写注释的习惯(重要部分才写,但是为了教学,我会加上更多注释)
# 注释一般是在某几行代码前的一行上写,表示此块代码的作用;或是在某一行的后面写,说明本行代码的作用
点赞1
评论
P1.1 交互(输入/输出函数)
print() # print译为打印,会将括号里的内容输出给你看,每次print会自动转行
# 在海龟编辑器里就是在最下面深蓝色区域(终端区)显示print的内容
input() # input译为输入,会在终端区出现光标,你可以在上面输入一些东西,并按回车结束输入
# input的括号里可以写上提示并显示在终端区(相当于用一次print)
点赞1
评论
P1.2.1 数据类型(上,单个的数据类型)
# python里定义了很多数据类型,比如最简单的整数int、浮点数(一定位数精度的小数)float、字符串str。
# 想要看输出结果,还是要用到print:
# int类型 整数
print(1)
print(-10)
# float类型 浮点数
print(-0.1)
print(3.141592653589793238462643383279502884197169399375105820974944) # 超过15位小数部分会被忽略,这叫舍入误差
# 科学计数法:“e”相当于“乘10的……次方”
print(1e9, -1414.213562373095e-3) # print支持同时输出多个结果,用逗号隔开
# str类型 字符串:一般用英文状态下的单引号或双引号框住,内容可以是任意的英文字母、数字、符号(部分符号如转行等特殊的符号后面会讲)
print('abc123xyz890')
print('1.732050808') # 注意这不是float类型,是一个str!是不能进行计算的。
print("Amy's book") # 如果字符串中出现英文的单引号,则需用双引号
# 双引号会优先于单引号,即计算机若识别到双引号,则里面不管多少个单引号也是看作字符串的一部分
# 小练习:试着运行 print('\'),出现报错?上网查“转义字符”了解一下
print() # 可以通过打印“什么都没有”来实现空行,因为每一次print()都会默认转行,这些应该能自己想到
# 文本字符串:用三对单引号或双引号框住,内容可以有换行
a = '''# 注意⚠️在文本字符串中注释会看成文本的一部分!
数*****了:"这些你会吗?"
我**学:"我能说不会吗?"
数*****了:"……"
这时出现反斜杠\就不会报错了
''' # 这里是把这个文本字符串赋值给a,之后会讲到变量赋值
# 在文本字符串内任何字符都会直接保存原来的样子,不会出现任何报错
print(a)
# complex类型 复数(不是英语课上的复数):虚数单位“i”要用“j”或大写“J”替换,且j前一定要带上数字(整数或浮点数)
print(1048576j, (-0.7071067811865476+0.7071067811865476J)) # 一个complex包含实部 real part 和虚部 imaginary part,且用小括号括起来表示一个整体,用+或-连接
# 如果不用括号括起来则会视为一个浮点数和一个实部为0的复数相加(减),不过结果都一样
# 试着运行 print(j) 和 print(1-j),报错?那是因为j前一定要带数字,否则无法识别为虚数单位,这里要改为1j
点赞1
评论
P1.2.1 输出参考:
1
-10
-0.1
3.喵9793
1000000000.0 -1.414213562373095
abc123xyz890
1.732050808
Amy's book
# 注意⚠️在文本字符串中注释会看成文本的一部分!
数*****了:"这些你会吗?"
我**学:"我能说不会吗?"
数*****了:"……"
这时出现反斜杠\就不会报错了
1048576j (-0.7071067811865476+0.7071067811865476j)
点赞1
评论
P1.3 变量赋值(不得不提前讲的一节课)
# 都怪我,没有调好课程顺序,我发现要继续讲下去必须先讲赋值
# 首先讲一下变量
# 变量就是一个可以存储一个数据的容器
# 可以将有用的数据存储起来方便后续使用,也可以参与运算
# 变量的命名规则:
# 1. 变量名的字符只能由26个英文字母、数字0~9、下划线“_”组成
# 2. 变量名首个字符不能为数字(可以是下划线)
# 3. 变量名的英文字母区分大小写,如变量a和A是不同的两个变量
# 4. 推荐起名字的时候变量名要具体一点,最好能说明表示什么,而且长一点便于区分,不要遇到什么就取a, b, c, n, x, y, z等基本无信息量的名字,不要嫌麻烦(本人亲测)
# 变量的赋值
# 在python语法里要命名一个变量并对其赋值的结构:变量名 = 数据
# 一个等号就表示将等号右边的数据赋值给左边的变量
# 如:
n1, n2 = 0, 1 # 一般数字用来编号;可以用逗号隔开分别赋值
a_complex_number = 1-2J # 一般下划线在变量里充当空格的意思,若一个变量要用几个单词才能表达,就可以用下划线
# 那么在这两行代码之后就可以直接打出变量名使用这些变量了:
print(n2, n1)
print(a_complex_number)
# 变量可以再赋值以修改:
a_complex_number = -1+2J
print(a_complex_number) # 然后这个变量就变成新的值了
n1 = '0' # 还可以改变数据类型。本来n1是整型的,改为字符串不会报错(很多语言是不支持这么做的,直接报错)
print(n1)
# 想要交换两个变量的值怎么办?
# 正常想到的方法就是:
tamp = n1
n1 = n2
n2 = temp
# 其实用之前逗号隔开分别赋值的方法可以实现
n1, n2 = n2, n1 # 其实内部运行的原理,就是python运行时等号右边会先被视为一个元组,即(n2, n1),再将其对应元素分别赋值给n1和n2
# 最后聊一聊,比较一下python和其他语言的不同之一:
# python的变量赋值是其一大亮点
# 以前的很多编程语言(如C、C++、Java)都是静态类型的语言,
# 即里面的一个变量在定义时就要告诉计算机它的数据类型是什么,在定义后不能改变其数据类型,要改变只能定义一个不同数据类型的新变量
# 而python里面的变量是动态的,即可以随时改变
# 便捷是便捷,但这样做也会有损失,python既然是动态的,那每次运行变量都要检测数据类型,运算速度自然就比静态类型语言慢了
点赞1
评论