补充流程控制及基本数据类型的内置方法

流程控制

while+continue

例:

# 请听题:循环打印出0-10之间的数字
# 请听题:循环打印出0-9之间的数字,但是不打印6
count = 0
while count < 4:
    if count == 2:
        count+=1
        continue  # 是调出本次循环
    print(count)
    count += 1

运行结果:

 while+else

当while循环内没有被人为中断(break)的时候,会执行else语句。

例:

count = 0
while count < 5:
    if count == 3:
        break
    print(count)
    count += 1
else:
    print('嘿嘿嘿')

运行结果:使用break / 未使用

 死循环

while True:
    print(123)
# 在程序中,死循环坚决不能出现

for循环

for循环能做的事情,while循环都能够做
for循环代码更加简介,另外,它不会出现死循环.

# 请听题:
name_list = ['kevin', 'tank', 'jason', 'tony']
# 循环取出列表中每一个人名
for name in name_list:
    print(name)
运行结果:

"""
    语法格式:
        for 变量名 in 可迭代对象: # 可迭代对象:可循环的对象,字符串、列表、字典、元组等
            print()
        当你的变量名没有合适的名字可叫的时候,可以采用i,j,k,v,item等代替
"""

# 字典报出来的是字段的K
# 循环打印字段的k和v
d
= {"username":'kevin', "age":18} for i in d: print(i, d[i])

运行结果:

 range关键字

一般配合for循环使用,有三种:

1 for i in range(10):  # 如果只有一个参数,意思是:从0开始,到10之间的整数
      print(i)
2 for i in range(3, 10):  # 如果有两个参数,意思是:从3开始,到10之间的整数
      print(i)
3 for i in range(1, 10, 2):  # 如果有三个参数,意思是:从1开始,到10之间的整数,隔2个步长
      print(i)

例:

1 base_url = 'https://movie.douban.com/top250?start=%s&filter='
2 for i in range(0, 150, 10):  # 网址使用占位符%s
3     print(base_url % i)

运行结果:

for+break/continue

1 for i in range(10):
2     if i == 3:
3         break/continue
4     print(i)

运行结果:

for+else

1 for i in range(10):
2     if i == 3:
3         break
4     print(i)
5 else:
6     print('嘿嘿')

九九乘法表

for i in range(1, 10):
    for j in range(1, i + 1):
        print('%s*%s=%s' % (i, j, i * j), end=' ') # 要公式示范
    print()

运行结果:

 数据类型内置方法

就是给各个数据类型内置的功能,如:表格数据有公式计算、透视表、对边框的各种操作等功能;视频数据有暂停、快进、倍速等功能。

它表现的形式:名字()  int()  print()

1.整形(int)

# 常见的进制数:二进制、八进制、十进制、十六进制(A B C D E F)
  # 二进制和十进制之间转换
    # 十进制转二进制:除2取余法

print(bin(10))   # 0b 1010  0b 代表的就是二进制
print(oct(10))   # 0o 12    0o 代表的是八进制
print(hex(10))   # 0x a     0x 代表的是十六进制

2.浮点型(float)

1 >>> s = '12.3'
2 >>> res=float(s)
3 >>> res,type(res)
4 (12.3, <class 'float'>)

3.字符串(str)

1 print(str(res), type(str(res))) 
2 print(str([
1, 2, 3, 4]), type(str([1, 2, 3, 4])))

内置方法

l = [1, 2, 3, 4]
res1 = str(l) # 转成字符串
print(res1[4])  

运行结果:

 支持索引取值:

1 res='helloworldhelloworldhelloworldhelloworldhelloworldadadasdasdsadhelloworldhelloworldhelloworld'   # 支持索引取值
2 # print(res[0])  # h
3 # print(res[1])  # e

切片:顾头不顾尾
1 print(res[0:3])  # hel
2 print(res[0:9:2])  # hlool 步长

  反向切片
 # print(res[2:]) # lloworld 冒号右边不写,一直切到结束
 # print(res[:6]) # hellow 冒号左边不写从0开始切
 # print(res[::3]) # hellow 冒号左边不写从0开始切
 # print(res[::-1]) # dlrowolleh,翻转字符串其中一种方式

  长度len
 # print(len(res)) # 93 length---->len
 # print(len([1, 2, 3, 4]))
 # print(len({'a':1, 'b':2}))

 例子:

 

  strip 移除字符串首尾指定的字符(默认移除空格)

  res1 = '@@hello@world@@'
 # print(res1)
 # print(res1.strip()) 
 # print(res1.lstrip()) 
 # print(res1.rstrip()) # 默认什么都不写,去掉的是空格

  print(res1.strip('@'))  去除两边
 # print(res1.lstrip('@')) 去除左边
 # print(res1.rstrip('@'))  去除右边的特殊符号

 # 中间的去不掉

1 切分 split
2 res1 = 'helloworld'
3 res1 = 'kevin 18 123'
4 res1 = 'kevin|18|male'
5 print(res1.split())  # ['kevin', '18', '123']  默认是空格切分,切分之后是列表的形式
6 print(res1.split('|'))  # ['kevin', '18', 'male']  默认是空格切分,切分之后是列表的形式
7 print(res1.rsplit('|', maxsplit=1))  # ['kevin', '18', 'male']  默认是空格切分,切分之后是列表的形式

 

posted @ 2023-05-18 21:22  一粒可海棠  阅读(19)  评论(0编辑  收藏  举报