九九乘法表,金字塔
3.17
今日内容:
Str 基础使用
用途:用来记录描述性质的状态
定义:在 “ ” , ‘ ’ ,‘’‘ ’‘’内包含一串字符
数据类型转换:可以把任意类型转成Str
res = str([1,2,3])
print(res,type(res))#[1, 2, 3] <class 'str'>
切片:
注意:切片取前不取后
msg = "hello world"
print(msg[0:5]) #起始位置:结束位置 输出结果:hello
print(msg[0:6:2]) #起始位置:结束位置:步长 输出结果:hlo
print(msg[:]) #完全拷贝字符串:hello world
print(msg[-1:-4:-1]) #倒着取值
长度:
msg = "ni hao"
print(len(msg)) #输出msg的字符串长度 结果:6
成员运算:
msg = "nihao"
print("ni" in msg) #True
移除空白strip
strip 两边若有空格且有符号,可以在strip(” “)双引号中,加入空格符和其他符号
name = " *hello- "
name1 = name.strip()
print(name1) #strip() 去除字符串两边空格 结果:*hello-
name2 = name1.strip("*-")
print(name2) # strip("*-")去除空格符号 结果:hello
切分split(有规律的字符串):
msg = "egon:18:male"
res = msg.split(":")
print(res) #按照符号切分['egon', '18', 'male']
res1 = msg.split(":",1)
print(res1)#只切一次['egon', '18:male']
拼接join:
join 拼接字符,需要赋值给全新的一个变量名
join 拼接列表,全为字符串,存在数字报错
join 也可以连接元组,全为字符串,存在数字报错
info = ["egon","18","male"]
res = ":".join(info)
print(res) # 相加到一块 结果为egon:18:male
乘法口诀表:
for x in range(1,10): # 取值1到9
for y in range(1,x+1): # 根据 x 取值依次增加
print(x,"X",y,"=",x*y,end = (" "))
print("")
'''
1 X 1 = 1
2 X 1 = 2 2 X 2 = 4
3 X 1 = 3 3 X 2 = 6 3 X 3 = 9
4 X 1 = 4 4 X 2 = 8 4 X 3 = 12 4 X 4 = 16
5 X 1 = 5 5 X 2 = 10 5 X 3 = 15 5 X 4 = 20 5 X 5 = 25
6 X 1 = 6 6 X 2 = 12 6 X 3 = 18 6 X 4 = 24 6 X 5 = 30 6 X 6 = 36
7 X 1 = 7 7 X 2 = 14 7 X 3 = 21 7 X 4 = 28 7 X 5 = 35 7 X 6 = 42 7 X 7 = 49
8 X 1 = 8 8 X 2 = 16 8 X 3 = 24 8 X 4 = 32 8 X 5 = 40 8 X 6 = 48 8 X 7 = 56 8 X 8 = 64
9 X 1 = 9 9 X 2 = 18 9 X 3 = 27 9 X 4 = 36 9 X 5 = 45 9 X 6 = 54 9 X 7 = 63 9 X 8 = 72 9 X 9 = 81
'''
金字塔:
案例1:
number = 5
for x in range(1,number+1): #画了多少行
for y in range(number-x): #画空格 x 由于从1开始循环,所以这次空格为5-1=4
print(" ",end="")
for z in range(2*x - 1): #画符号"*",由于x为1,此时取值(0,1)为0,只画一次
print("*",end="")
print("")
'''
*
***
*****
*******
*********
'''
案例2:
# 固定画金字塔
xing_nmuber = 1 # 开局几个 *
none_number = 4 # 开局几个空格
for a in range(5): # 画几行
for b in range(none_number):
print(" ",end="")
none_number-=1
for i in range(xing_nmuber):
print("*",end="")
xing_nmuber+=2
print()
案例3:
# 交互金字塔 - “ 略不规则金字塔 ” 行数 - 空格数 ≤ 1 才能形成类似金字塔!
xing_nmuber = int(input("开局几个*?")) # 开局几个 *
none_number = int(input("开局几个空格?")) # 开局几个空格
lin_number = int(input("要画几行?")) # 画几行
for a in range(lin_number): # 画行
for b in range(none_number): # 画空格
print(" ",end="")
none_number-=1
for i in range(xing_nmuber): # 画行
print("*",end="")
xing_nmuber+=2
print()
案例4:
number = 5
for i in range(1,number+1):
print((((2*i-1)*"*").center((2*i-1+(number-i)*2))))
'''
运行结果:
*
***
*****
*******
*********
'''

浙公网安备 33010602011771号