首页 > 其他分享 >流程控制补充及数据类型内置方法

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

时间:2023-05-18 21:15:52浏览次数:33  
标签:count 10 内置 res 流程 数据类型 range str print

流程控制的补充

while+continue的使用

countinue: 跳出本次循环,直接进入下一次循环。

eg.1.循环打印出0-10之间的数字:

1 count = 0
2 while count < 10:
3     print(count)
4     count += 1

运行结果:

 eg 2. 循环打印出0-9之间的数字,但是不打印5

 

1 count = 0
2 while count < 9:
3     if count == 5:
4         count += 1
5         continue  # 跳出本次循环
6     print(count)
7     count += 1

 

运行结果:

 while+else的使用

while循环结构后面可以加else语句,当while循环执行完并且中间没有人为中止即break,就会执行else后面的语句。

eg:当没有break时

1 count = 0
2 while count < 10:
3     if count == 3:
4         count += 1
5     print(count)
6     count += 1
7 else:
8     print('喵喵喵')
# 当while循环内没有被人为中断(break)的时候,会执行else语句

运行结果:

 eg.当有break时

1 count = 0
2 while count < 10:
3     if count == 3:
4         break   # 人为中断,当count=3时程序到此结束运行
5     print(count)
6     count += 1
7 else:
8     print('喵喵喵')

运行结果:

 死循环

程序不停的被执行,内存空间被大量占用。

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

for循环

for循环能做的事情,while循环也可以做到。但是使用for循环,代码会更简洁一点,而且使用for循环不会出现死循环。

语法结构:

    for 变量名 in 可迭代对象:#可迭代对象:可循环的对象,比如字符串、列表、字典、元组等

      print()  #当没有合适的名字命名时,可用i,j,k,v,item等代替

eg:

name_list = ['kevin', 'tank', 'jason', 'tony'],循环取出列表中每一个人名

1 name_list = {'username':'Jolly','age':18}
2 for i in name_list:
3     print(i,name_list[i])

运行结果:

 eg2:循环打印字段的k和v

name_list = {'username':'Jolly','age':18}
for i in name_list:
    print(i,name_list[i])

运行结果:

 因为字典曝出来的是k,所以想要输出v的值,需要通过对k取值才能得到。

range关键字

range关键字一般有三种用法,一般搭配for循环使用

1.

1 for i in range(9):  # range()如果是单个参数,是:从0到9的整数
2     print(i)

运行结果:

 2.

1 for i in range(2, 9):  # 如果是两个参数,意思是从2开始到9之间的参数,顾头不顾尾
2     print(i)

运行结果:

 

3.

for i in range(0,9,2):# 如果是三个参数,意思是从0到9之间的整数,步长为2
    print(i)

运行结果:

 具体案例:

base_url = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 250, 25):
    print(base_url % i)
 

运行结果:

# range在不同版本解释器中的区别
  在python2中直接打印出结果

  在python3中做了优化,把它变成了迭代器, 就是节省内存资源

for+break(用法同while)

for i in range(10):
    if i == 3:
        break  # 人为中断
    print(i)

运行结果:

 for+continue

for i in range (10):
    if i == 3:
    continue     #跳出本次循环
print(i)

 for+else

for i in range(10):
    if i == 3:
        break
    print(i)
else:
    print('嘿嘿')

运行结果:

打印九九乘法表

for i in range(1, 10):
    for j in range(1, i + 1):
        print('%s*%s=%s' % (j,i,j*i), end=' ') 

print()

运行结果:

数据类型内置方法

1.什么是内置

就是给各个数据类型内置的功能

比如:表格数据有公式计算、透视表、对边框的各种操作等功能

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

1. 整型 int

int 的定义age=int(10)

进制转换

常见的进制数:二进制、八进制、十进制、十六进制(A B C D E F)

int还可以进行二进制转换

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

把二进制转为十进制
  print(int('0b1010', 2))
  print(int('0o12', 8))
  print(int('0xa', 16))

2.浮点型

float同样可以用来做数据类型的转换

比如:

salary = 10000.9
res = float(salary)
print(res,type(res))

结果:

3.字符串

str()可以将任意数据类型转换成字符串类型,通过索引取值 

res = 12.3
print(str(res), type(str(res)))
print(str(1.11), type(str(1.11)))
print(str('helloworld'), type(str('helloworld')))
print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4])))
print(str({'a': 1, 'b': 2}), type(str({'a': 1, 'b': 2})))
print(str((1, 2, 3)), type(str({'a': 1, 'b': 2})))
print(str(({1, 2, 3})), type(str({'a': 1, 'b': 2})))

运行结果:

字符串内置的方法

1.索引取值

res = 'helloworld'
print(res[0])
print(res[-3])  # -号代表反向取值

结果:

 2.切片:顾头不顾尾

res = 'helloworld'
print(res[0:3])  # hel
print(res[2:6])  # llow
print(res[0:9:2])  # hlool 步长

运行结果:

 

3.反向切片:

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

运行结果:

4.长度len:

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

运行结果:

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

l = ' helloworld '
print(l)
print(l.strip())
print(l.lstrip())
print(l.rstrip())

运行结果:

 去除特殊符号:

l = '@@hello@world@@'
print(l)
print(l.strip('@'))
print(l.lstrip('@'))
print(l.rstrip('@'))
    # 只能去除两边的特殊字符,中间的不好去

结果:

 6.切分split

l = 'helloworld'
l = 'kevin 18 123'
l = 'kevin|18|male'
print(l.split())  # ['kevin', '18', '123']  默认是空格切分,切分之后是列表的形式
print(l.split('|'))  # ['kevin', '18', 'male']  默认是空格切分,切分之后是列表的形式
print(l.rsplit('|', maxsplit=1))  # 从右边开始切分,且只切分一次

结果:

 

标签:count,10,内置,res,流程,数据类型,range,str,print
From: https://www.cnblogs.com/chenr-2829/p/17413293.html

相关文章

  • 流程控制和一些字符串内部读取关键词或格式
    1.流程控制1.while+continue立即调出本次循环,同属一个代码块后面的代码都不会进行,直接回到while   //不仅可以用在while中,for循环中也可以例:1#打印出0到5的数字,除了32x=03whilex<=5:4ifx==3:5x+=16continue7els......
  • python day 06 部分循环和部分数据类型内置方法
    while+continue#请听题:循环打印出0-10之间的数字#请听题:循环打印出0-9之间的数字,但是不打印6count=0whilecount<10:ifcount==6:count+=1continue#是跳出本次循环,整体循环还在继续print(count)count+=1while+elsecount......
  • Python的基础语法“四” 数据类型内置方法
    数据类型内置方法1.整型1.语法: int()2.作用: 将括号内数据转化为整型还可以进行进制转换2.1、我们常见的进制有哪些?#常见的进制数:二进制、八进制、十进制、十六进制(ABCDEF)#二进制和十进制之间转换#十进制转二进制:除2取余法#......
  • 整型&浮点型&字符串 内置方法
    目录int整型float浮点型str字符串int整型进制转换print(bin(10))#0b10100b代表的就是二进制print(oct(10))#0o120o代表的是八进制print(hex(10))#0xa0x代表的是十六进制#其他进制转十进制print(int('0b1010',2))#10print(int('0o12',8))......
  • RocketMQ源码(三):服务端NameSrv启动流程
    有关Namesrv的概念及功能,详见RocketMQ(三):架构设计中技术架构组成namesrv,这里不再赘述。RocketMQ中Namesrv启动入口:org.apache.rocketmq.namesrv.NamesrvStartup。Namesrv启动,NamesrvStartup#main0()核心伪代码:1publicstaticNamesrvControllermain0(String[......
  • 程序流程结构
    概述C语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构1.顺序结构:程序按顺序执行,不发生跳转。2.选择结构:依据是否满足条件,有选择地执行相应功能。3.循环结构:依据是否满足条件,循环多次执行某段代码。if语句#include<stdio.h>#include<stdlib.h>intmain()......
  • python之基本数据类型
    搭建python环境python中的基本数据类型:1.表达式1.1表达式的概念:1.1.1表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以求得数值的有意义排列方法所得的组合1.2表达式的特点:1.2.1表达式一般仅仅用于计算一些结果,不会对程序产生实质性的影响1.2.2如果在交互模式......
  • c++程序流程结构
    c++程序流程结构c++中支持最基本的三种流程结构:顺序结构、选择结构、循环结构顺序结构:程序按顺序执行,不会发生跳转。选择结构:根据条件是否满足,有选择的执行相应的功能。循环结构:根据条件是否满足,循环多次执行某代码块。if语句:作用:执行满足条件的语句单行if语句:语法:if(条件){ 条件......
  • 【泛微】流程节点时效统计SQL
    selectrb.requestid,rb.`REQUESTNAME`,r2.LASTNAME,c.isremark,cast(CONCAT(RECEIVEDATE,'',RECEIVETIME)asdatetime)'接收时间',cast(CONCAT(OPERATEDATE,'',OPERATETIME)asdatetime)'处理时间',cast(CONCAT(firstviewdate,&#......
  • Spring循环依赖那些事儿(含Spring详细流程图)
    本篇不仅仅是介绍Spring循环依赖的原理,而且给出Spring不能支持的循环依赖场景与案例,对其进行详细解析,同时给出解决建议与方案,以后出现此问题可以少走弯路。背景1、循环依赖异常信息应用时间时间久应用多人同时并行开发应用保证迭代进度经常出......