|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Judie 于 2020-3-31 12:27 编辑
【朱迪的手写学习笔记 之 零基础入门学习Python】004
2020要继续努力呀!
视频笔记
004_1of2
004_2of2
课后作业
第004讲:改进我们的小游戏 | 课后测试题及答案
https://fishc.com.cn/thread-37006-1-1.html
(出处: 鱼C论坛)
动动手
0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。
input()的作用是接受用户输入/接受得到的东西会是个字符串
int()的作用是把接受得到的字符串转换为整数类型,
= 赋值
print() 打印到屏幕/默认是结束会换行。end=‘ ’意在使其末尾不换行
print()默认打印完字符串会自动添加一个换行符
end 是函数print()的一个参数,用来指定打印结束时末尾的符号,默认是回车/即换行
2.尝试写代码实现以下截图功能:
标答temp = input('请输入一个整数:')
number = int(temp)
while number:
i = number - 1
while i:
print(' ', end = '')
i = i - 1
j = number
while j:
print('*', end = '')
j = j - 1
print()
number = number - 1
注释temp = input('请输入一个整数:') # input()的作用是接受用户输入,假设用户输入3/此时接受的这个3是个字符串
number = int(temp) # int()的作用是将3从字符串转换为整数类型,此时number=3
while number: # 即while 3: 即while True:/只有False,None,0,"",'',(),[],{},会被看做假
i = number - 1 # i= 3-1 = 2
while i: # 即while 2: 即 while True: 所以执行循环下的内容
print( ' ',end ='') # 打印一个空格/print默认是打印一行,结尾加换行。end=' '意思是末尾不换行
i = i-1 # i = 2-1 = 1,
#回到while i: 开始第二次循环,再打印一个空格后,i=1-1=0,因为while i:即while 0: 所以没有第三次循环了
#此时在第一行共打印了两个空格
j = number # j = 3
while j: # 即while 3: 即while True:所以执行循环下的内容
print('*',end ='') #打印一个星号,末尾不换行
j = j-1 #j= 3-1 =2
#回到while j: 开始第二次循环,打印一个星号,j=2-1=1
#开始第三次循环,打印一个星号,j=1-1=0,没有第三循环了
#此时,在第一行接着两个空格后 共打印了3个星号
print() #换行/另起一行
number = number -1 #number=3-1=2
#继续,while number; 即 while 2: 又一个循环,重复以上操作
#i=number-1 即 i=1
#while i: 即 while 1:的循环 -> 在第二行共打印一个空格
#j=number 即 j=2
#while j: 即 while 2:的循环 -> 在第二行接着一个空格后 共打印了2个星号
#此时,在第2行接着1个空格后 共打印了2个星号
#print() 去到第三行
#number = 2-1=1
#while number: 的第三次循环
#i= number-1 =1-1 =0
#while i; 即while 0: 条件不为真,不执行循环下的操作 -》在第三行没有空格被打印
#j=number =1
#while j: 即 while 1: -》在第三行 共打印1个星号
#此时,在第3行接着0个空格后 共打印了1个星号
#print() 去到第四行
#number=1-1 =0
#while number; 即 while 0: 条件不为真,不再继续
#运行完毕
#第1行2空格3星号
#第2行1空格2星号
#第3行0空格1星号
还有看到一个很好的code,运行起来也是没问题,实现的效果也是一样的b = input('请输入一个整数:')
c = int(b)
a = c -1
while c:
print(' '*a,end='')
print('*'*c)
c -=1
a -=1
再附一个code:num = int (input('请输入一个整数:'))
while num :
print((num-1) * ' ' + num * '*' )
num -= 1
【最新版】
第004讲:变量和字符串(下)| 课后测试题及答案
https://fishc.com.cn/thread-144421-1-1.html
(出处: 鱼C论坛)
动动手
0. 请将下面的文本拷贝并赋值给变量名(fishc),使其可以如下图的效果打印输出。
解析:由于字符串内容中存在反斜杠(\),为了其完整性,请务必使用原始字符串(在三引号前面加上 r)
>>> fishc = """
___ ___ ___ ___
/\ \ ___ /\ \ /\__\ /\ \
/::\ \ /\ \ /::\ \ /:/ / /::\ \
/:/\:\ \ \:\ \ /:/\ \ \ /:/__/ /:/\:\ \
/::\~\:\ \ /::\__\ _\:\~\ \ \ /::\ \ ___ /:/ \:\ \
/:/\:\ \:\__\ __/:/\/__//\ \:\ \ \__\/:/\:\ /\__\/:/__/ \:\__\
\/__\:\ \/__//\/:/ / \:\ \:\ \/__/\/__\:\/:/ /\:\ \ \/__/
\:\__\ \::/__/ \:\ \:\__\ \::/ / \:\ \
\/__/ \:\__\ \:\/:/ / /:/ / \:\ \
\/__/ \::/ / /:/ / \:\__\
\/__/ \/__/ \/__/"""
>>>
>>> print(fishc)
___ ___ ___ ___
/\ \ ___ /\ \ /\__\ /\ \
/::\ \ /\ \ /::\ \ /:/ / /::\ \
/:/\:\ \ \:\ \ /:/\ \ \ /:/__/ /:/\:\ \
/::\~\:\ \ /::\__\ _\:\~\ \ \ /::\ \ ___ /:/ \:\ \
/:/\:\ \:\__\ __/:/\/__//\ \:\ \ \__\/:/\:\ /\__\/:/__/ \:\__ \/__\:\ \/__//\/:/ / \:\ \:\ \/__/\/__\:\/:/ /\:\ \ \/__/
\:\__\ \::/__/ \:\ \:\__\ \::/ / \:\ \
\/__/ \:\__\ \:\/:/ / /:/ / \:\ \
\/__/ \::/ / /:/ / \:\__\
\/__/ \/__/ \/__/
>>> fishc = r""" ___ ___ ___ ___
/\ \ ___ /\ \ /\__\ /\ \
/::\ \ /\ \ /::\ \ /:/ / /::\ \
/:/\:\ \ \:\ \ /:/\ \ \ /:/__/ /:/\:\ \
/::\~\:\ \ /::\__\ _\:\~\ \ \ /::\ \ ___ /:/ \:\ \
/:/\:\ \:\__\ __/:/\/__//\ \:\ \ \__\/:/\:\ /\__\/:/__/ \:\__\
\/__\:\ \/__//\/:/ / \:\ \:\ \/__/\/__\:\/:/ /\:\ \ \/__/
\:\__\ \::/__/ \:\ \:\__\ \::/ / \:\ \
\/__/ \:\__\ \:\/:/ / /:/ / \:\ \
\/__/ \::/ / /:/ / \:\__\
\/__/ \/__/ \/__/"""
>>> print(fishc)
___ ___ ___ ___
/\ \ ___ /\ \ /\__\ /\ \
/::\ \ /\ \ /::\ \ /:/ / /::\ \
/:/\:\ \ \:\ \ /:/\ \ \ /:/__/ /:/\:\ \
/::\~\:\ \ /::\__\ _\:\~\ \ \ /::\ \ ___ /:/ \:\ \
/:/\:\ \:\__\ __/:/\/__//\ \:\ \ \__\/:/\:\ /\__\/:/__/ \:\__\
\/__\:\ \/__//\/:/ / \:\ \:\ \/__/\/__\:\/:/ /\:\ \ \/__/
\:\__\ \::/__/ \:\ \:\__\ \::/ / \:\ \
\/__/ \:\__\ \:\/:/ / /:/ / \:\ \
\/__/ \::/ / /:/ / \:\__\
\/__/ \/__/ \/__/
>>>
1. 打印一个九九乘法表。
标答
>>> for i in range(1, 10):
... for j in range(1, i+1):
... print(i, "x", j, "=", i * j, end=' ')
... print("\n")
注释
range() 函数可创建一个整数列表,一般用在 for 循环中。
函数语法:range(start, stop[, step])
参数说明:
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
range()是一个函数, for i in range () 就是给i赋值:
比如 for i in range (1,3):
就是把1,2依次赋值给i
例如,range(1,5)给出序列[1, 2, 3, 4]。默认情况下,range 步距取为1。如果我们提供第三个数字,range那么它变成了步距。例如range(1,5,2)得到[1,3]。
for循环然后遍历这个范围,for i in range(1,5)相当于 for i in [1, 2, 3, 4],这就像把序列中的每一个数(或对象)分配给i,一次一个,然后为每个i值执行该语句块。
for i in range(1,10): # i = 1,2,3,4,5,6,7,8,9
for j in range(1,i+1):
print(i,"x",j,"=",i*j,end=" ")
print('\n')
# 第一次i的for循环 即 i=1
# for j in range (1,i+1) 即 for j in range(1,2) 即 j=1
# 第一次j的for循环 即 j=1
# print(i,"x",j,"=",i*j,end=" ") 即 print(1,"x",1,"=",i*j,end=" ") 即 打印1 x 1 = 1空格结尾
# j的for循环结束
# print('\n') 另起一行
# 第二次i的for循环 即 i=2
# for j in range (1,i+1) 即 for j in range(1,3) 即 j= 1,2
# 第一次j的for循环 即 j=1
# print(i,"x",j,"=",i*j,end=" ") 即 print(2,"x",1,"=",i*j,end=" ") 即 打印2 x 1 = 2空格结尾
# 第二次j的for循环 即 j=2
# print(i,"x",j,"=",i*j,end=" ") 即 print(2,"x",2,"=",i*j,end=" ") 即 打印2 x 2 = 4空格结尾
# j的for循环结束
# print('\n') 另起一行
#以此类推
|
|