python for循环while循环数据类型内置方法

while 条件:
条件成立之后循环执行的子代码块

每次执行完循环体子代码之后都会重新判断条件是否成立
如果成立则继续执行子代码如果不成立则退出
image
break用于结束本层循环

### 一:continue:结束本次循环,开始下一次循环

1.直接让代码再次回到while循环的条件判断处,重新判断条件在执行,这就叫做continue

  • break结束本层循环 # continue结束本次循环
    image
  • continue会让循环体代码直接回到条件判断处重新判断

### 2.while+else

当while循环没有被人为中断(break)的情况下才会走else/执行子代码
image

当while循环被人为中断(break)的情况不会走else/执行子代码
image

3.死循环

"""死循环会让CPU极度繁忙 甚至奔溃"""
image

### 4.for循环

1.or循环能做到的事情 while循环都可以做到
但是for循环语法更加简洁 并且在循环取值问题上更加方便

现在我有一个班级列表,里面存了几个人名字,循环取出列表每一个元素/数据,打印出来
循环取出列表每一个元素,并打印

while实现:
image

  • for 变量名 in 可迭代对象: # 字符串、列表、字典、元组、集合 for循环体代码
  • ps:变量名如果没有合适的名称 那么可以使用i,j,k,v,item等
  • for循环实现:
    for 变量名 in 可迭代对象
    循环依次取出列表内的元素,直到列表内取完一个不剩 自动结束。
现在我有一个班级列表,里面存了几个人名字,循环取出列表每一个元素/数据,打印出来
循环取出列表每一个元素,并打印
 for循环可以把列表内的元素都打印出来

image

  • for循环 字符串
从头开始,把第一个字符,赋值给变量名i,打印i之后这个子代码就结束了,
结束之后这个i就解放了,就会不绑定这个i了,就绑定第二个字母e,然后在绑定l,打印l,这个叫for循环,迭代取值。

image

  • for循环 字典
    image
详细

for循环字典:默认只能拿到k
image

5.range关键字

  • while实现 循环打印出0-1000
    image
    关键字range
  • range 能产生一定范围的数字
range是专门配合for循环使用的,频率非常的高
range相当于是一个数字范围,

image

6.for循环的功能

  • for+break
    break:功能也是用于结束本层循环
    image

  • for+continue
    continue:功能也是用于结束本次循环
    image

  • for+else
    else:也是在for循环正常结束的情况下才会执行
    image

7.for循环的嵌套使用

  • for循环嵌套(大循环套小循环)
    image
    1.for嵌套
    演示1:
    image
    演示2:
    image
  • for循环(99乘法表)
    image

### 8.数据类型的内置方法

在日常生活中不同类型的数据具有不同的功能
# eg:表格数据文件具有处理表格的各项功能(透视表 图形化 公式计算)
视频数据文件具有快进 加速等各项功能

程序里也有不同的数据类型,每个数据类型也有它独有的功能
## 数据类型的内置方法
方法在代码中展示出来的效果 就是       名字()     如:print() inpit() id()等


# 整型 (int)
i = 999
# 唯一需要掌握的就是 类型转换
res = '123'               # '123'类型字符串
print(type(res))         # 查看res类型为(字符串)
res = int(res)           # 将res转换为(整型)
print(type(res))         # 查看res类型为(整型)
# int在做类型转换的时候 只能转换纯数字
int('123.123')        # 报错   整型是不识别小数字的
int('jason123')      # 报错   不识别除数字以外的数据

# # int其实还可以做进制数转换
print(bin(100))     # 将十进制的100转换成二进制  0b1100100          #十进制逢十进一
print(oct(100))     # 将十进制的100转换成八进制  0o144             #八进制逢八进一
print(hex(100))     # 将十进制的100转换成十六进制 0x64             #十六进制逢十六进一

# 0b开头为二进制数    0o开头为八进制数      0x开头为十六进制数
# 怎么把其他进制数转换成十进制
print(int('0b1100100', 2))     # 100               # 前面放int   后面字符串形式 后面放上是几进制数
print(int('0o144', 8))         # 100
print(int('0x64', 16))         # 100

# 相互类型的转换

*1.浮点型float
类型转换:

res = '123.23'
print(type(res))      # class str      输入输出都为字符串
res = float(res)     # 将res所指向的值转换成浮点型,并重新赋值给res变量名
print(type(res))     # 查询res类型为:浮点型

print(float('123'))   # 将整型转换成浮点型 123.0

print(float('jason123'))   # 报错 不识别 数字 小字点 以外的

image

  • 2.字符串str
    类型转换
# 字符串的 str
# 类型转换

# * 任何数据类型都可以转换成字符串
print(str(123))                            # 转整型
print(str(123.21))                        # 转浮点型
print(str([1, 2, 3, 4]))                  # 转列表
print(str({'name': 'jason', 'pwd': 123}))  # 转字典
print(str((1, 2, 3, 4)))                  # 转元组
print(str(True))                        # 转布尔值
print(str({1, 2, 3, 4}))                # 转集合

# 都转成了字符串

image

9.基本用法:

res = 'hello world'
# # 索引取值
# print(res[1])        # e
#
# # 切片操作           # 顾头不顾尾
# print(res[1:4])      # ell

# 步长操作
print(res[1:10:1])      # ello worl   # 写1和不写1一样的,1就是不跳,2就是跳1格
print(res[1:10:1])      # ello worl
print(res[1:10:2])     # el          # 2:跳一格 隔一格取一个

# 帮助你有规则的去取,跳几格,跳几格。

image

res = 'hello world!'
1.索引支持负数
print(res[-1]) # ! 取最后一位
2.切片支持负数
print(res[-5:-1]) # orld 顾头不顾尾
3.步长支持负数
print(res[-5👎-1]) # 取不到 方向冲突

image

5.统计字符串内部字符的个数

res = 'hello world!'
print(len(res)) # 12 # 统计空格也算,len统计字符个数,把你想要的东西放在里面,会返回这个数据的格数
image
6.移除字符串首尾指定的字符 strip()

# name = '  jason  '                  # 首尾两个空格
# print(name, len(name))             # 打印name  统计name有9个个数
# print(len(name.strip()))          # 统计name有9个个数 strip()默认移出首尾的空格
# # 也可以指定移出符号
# name1 = '$$jason$$'
# print(name1.strip('$'))           # 指定移出首尾的字符
# print(name1.lstrip('$'))          # lstrip移除左边
# print(name1.rstrip('$'))          # rstrip移除右边

image

  • 实现用户输入时加入空格时,去除首尾空格
    image
    eg:strip用习惯后可以直接:

username = input('请输入您的姓名').strip()

意思:先获取用户输入的内容,在移除首尾的空格,在赋值给变量名username,在使用。

7.按照指定的字符切割字符串 split() 该方法的结果是一个列表

res2 = 'jason|123|18'
# 这个字符串里面包含了jason的用户名,密码,年龄,现在把这三个赋值给三个变量。
print(res2.split('|'))      # 切割结果为列表['jason', '123', '18']
print(res2.split('|', maxsplit=1))    # 用于控制切割的次数,切割数为1,只切割一个,从左往右
print(res2.rsplit('|', maxsplit=1))   # 控制切割次数,切割为1 :rsplit从右往左切


整体

res2 = res2.split('|')
name = res2[0]
gae = res2[1]
count = res2[2]
print(name, gae, count)

image
技巧:

如何查看数据类型都有哪些内置方法
句点符(.)
image

posted @ 2021-11-07 14:54  AlexEvans  阅读(207)  评论(0编辑  收藏  举报