复习:

1.字符串和数字之间不能⽐⼤⼩,但可以判断是否相等(⼀定不相等)

2.在判断中使⽤or的时候,后边的判断条件⼀定要写全,不能只写⼀个数据值

对于数字来说: 0-->False,其余的全是True,

对于字符串来说,空字符串'',是False,其余的全是True

% 求余数,应⽤就是判断数学中的整除(余数是0)

例:12

个位数:12%10=2

⼗位数:12// 10 = 1

今日内容:

  • 循环:

1、 for循环

2、break和continue

  • 字符串的操作
  • 列表介绍

循环:

for循环

for循环也可以让指定的代码重复执⾏(循环)

for循环可以遍历容器中的数据(

遍历:从容器中把数据⼀个⼀个取出

容器:可以简单理解为盒⼦,盒⼦中可以存放很多的数据(字符串str,列表list,元组tuple,字典dict))

for循环也可以称为for遍历

基本的for循环语法:

for 变量名 in 容器:

重复执⾏的代码

# 1. for和in都是关键字

# 2.容器中有多少个数据,循环会执⾏多少次(0个数据,执⾏0次,...)

# 3.每次循环,会将容器中数据取出⼀个保存到in关键字前边的变量中

代码运行:

# 定义字符串
my_str = 'hello'
# 遍历字符串,字符串中有5个字符,循环会执行5次
for i in my_str:   # 每次循环i 的值为字符串中的字符print('我错了', i)

结果:

for做指定次数的循环 :

for 变量 in range(n):

重复执⾏的代码

# 1, range() 是Python中的函数,作⽤:可以⽣成[0, n)之间的整数,不包含n,⼀个共有n个数字,所以这个循环循环n次

# 2,想让for循环 循环多少次,n就写⼏

# 3,变量的值也是每次循环从[0, n)取出⼀个值,第⼀次取得是0 ,最后⼀次取得是n-1

range()变形

#需求:使⽤for循环获取5到10之间的数字

for变量inrange(a, b):

重复的代码

#  range(a, b)作⽤是⽣成[a, b)之间的整数数字,不包含b

代码示例:

for  i  in  range(5):  # [0 1 2 3 4 ]

print(i)

print('-'*30)

#需求:使⽤for循环获取5到10(包含)之间的数字

for  m  in  range(5, 11):

print(m)

break和continue

break和continue是Python中的两个关键字,只能在循环中使⽤

break:终⽌循环,即代码执⾏遇到break,循环不再执⾏,⽴即结束

continue:跳过本次循环.即代码执⾏遇到continue,本次循环剩下的代码不再执⾏,继续下⼀次循环

代码示例:

# 获取输入的字符串
result = input('请输入一个字符串:')
# 遍历打印这个字符串
for i in result:# 在遍历的时候,如果这个字符是e,不打印(即后续的代码不执行)if i == 'e':continue   # 本次循环后续的代码不执⾏,执⾏下⼀次循环print(i)
print('-' * 30)
for i in result:# 3.在遍历的时候,如果这个字符是e,不打印(即后续的代码不执⾏)#如果这个字符不是e,打印if i != 'e':print(i)

容器

容器:也可以称为是数据序列,或者⾼级数据类型,也是Python中的数据类型

容器中可以存放多个数据.

字符串

字符串是容器,因为字符串中可以包含多个字符

定义:

使⽤引号(单引号,双引号,三引号)引起来的内容就是字符串

代码示例:

# 使⽤单引号定义
my_str1 = 'hello'
print(my_str1, type(my_str1))
# 使用双引号定义
my_str2 = "hello"
print(my_str2, type(my_str2))
# 使用定义三引号
my_str3 = '''hello'''
print(my_str3, type(my_str3))
# 4.字符串本身包含引号I'm⼩明
# 4.1字符串本身包含单引号,则在定义的时候不能使⽤单引号
# .2字符串本身包含双引号,则在定义的时候不能使⽤双引号
my_str4 = "I'm 小米"
print(my_str4)
# 5.字符串本身包含单引号,在定义的时候,我就是想使⽤单引号
# 5.1 使⽤\转义字符,将字符串本身的引号进⾏转义\' -->'     \" --> "
my_str5 = 'I\'m 小米'
print(my_str5)
# 5.2
# 字符串本身包含 I\'m⼩明  ,使用\\ --> \
my_str6 = 'I\\\'m 小米'
print(my_str6)
# 5.3 在字符串前边加上r""原⽣字符串,字符串中的\不会作为转义字符,⽂件操作会⽤⼀下
my_str7 = r'I\'m 小米'
print(my_str7)
my_str8 = r'I\\\'m 小米'
print(my_str8)

下标:

下标(索引):就是指字符在字符串中的位置编号,这个编号就是下标

这个编号⼀般来说都是从左到右进⾏编号的,从0开始的(Python中⽀持负数下标,从右到左进⾏编号的,从-1开始)

下标作⽤:可以使⽤下标获取字符串中某个位置的字符

语法:字符串[下标]#获取指定位置的字符

代码示例:

str1 = 'abcdefg'
# 1.打印字符串中最开始位置的字符
print(str1[0])
# 2.打印最后⼀个位置的数据
print(str1[-1])
# 3.打印倒数第⼆个位置的字符
print(str1[-2])
# 打印下标为2的数据
print(str1[2])
# 获取字符串中字符的个数(获取字符串的⻓度)
# len(字符串)
# length(⻓度)
num = len(str1)
print(num)
#⻓度-1的下标位置是最后⼀个字符
print(str1[num-1])   # g最后⼀个字符,倒数第⼀个
print(str1[len(str1)-1])   # g最后⼀个字符,倒数第⼀个

切片:

切⽚:可以获取字符串中多个字符(多个字符的下标是有规律的,等差数列)

语法:字符串[start:end:step]

start是开始位置的下标,

end是结束位置的下标(注意,不能取到这个位置的字符)

step步⻓,等差数列的差值,所取的相邻字符下标之间的差值,默认是1,可以不写

例:

[1:5:1]        #1234

[1:5:2        ]#13

[1:5:3]        #14

[1:5:4]        #1

代码示例:

# 切⽚会得到⼀个字符串,即可以获取字符串中的多个字符
str1 = 'abcdefg'
# 1.获取abc字符
print(str1[0:3:1])
# 1.1 如果步⻓是1可以不写,最后⼀个冒号也不写
print(str1[0:3])
# 1.2 如果开始位置为0 ,可以不写,但是冒号必须有
print(str1[:3])
# 2.获取efg字符
print(str1[4:7])
print(str1[-3:7])
# 2.1如果最后⼀个字符也要取,可以不写,但是冒号必须有
print(str1[4:])
# 2.2如果开始和结束都不写,获取全部内容,但是冒号必须有
print(str1[:])
# 3.获取aceg   # 0 2 4 6,所以步⻓为2
print(str1[0:7:2])
print(str1[::2])
# 4.特殊应⽤,步⻓为负数,开始和结束不写,意思全变,⼀般不⽤管,只有⼀种使⽤场景
#反转(逆置)字符串   字符串[::-1]
print(str1[::-1])

字符串的查找⽅法find

字符串.find(sub_str,start,end)

作⽤:在字符串中查找是否存在sub_str这样的字符串

sub_str:要查找的⼩的字符串

start:开始位置,从哪个下标位置开始查找,⼀般不写,默认是0

end:结束位置,查找到哪个下标结束,⼀般不写,默认是len()

返回(代码执⾏之后会得到什么,如果有返回,就可以使⽤变量保存):

1.如果在字符串中找到了sub_str,返回sub_str第⼀次出现的正数下标(sub_str中第⼀个字符在⼤字符串中的下标)

2.如果没有找到,返回-1

代码示例:

str1 = 'and itcast and itheima and Python'
# 在字符串中查找and
num = str1.find('and')
print(num)
# 在字符串中查找第⼆个and出现的下标,从第⼀次出现的后⼀位开始找
num1 = str1.find('and',num+1)
print(num1)
# 在字符串中查找第三个and出现的下标,从第二次出现的后⼀位开始找
num2 = str1.find('and',num1+1)
print(num2)
# 在字符串中查找第四个and出现的下标,从第三次出现的后⼀位开始找
num3 = str1.find('and',num2+1)
print(num3)

字符串的替换⽅法replace

字符串.replace(old_str,new_str,count)        #将字符串中old_str替换为new_str

-old_str:被替换的内容

-new_str:替换为的内容

-count:替换的次数,⼀般不写,默认是全部替换

-返回:替换之后的完整的字符串,注意:原来的字符串没有发⽣改变

代码示例:

str1 = ' good good study '
# 1,将str1中所有的g改为G
str2 = str1.replace('g','G')
print('str1:', str1)  # str1:  good good study
print('str2:', str2)  # str2:  Good Good study
# 1,将str1中第一个的good改为GOOD
str3 = str1.replace('good','GOOD',1)
print('str3:', str3)  # str3:  GOOD good study
# 1,将str1中第e二个的good改为GOOD
# 3.1先将全部的good--> GOOD
str4 = str1.replace('good','GOOD')
# 3.2 再将第⼀个GOOD --> good
str5 = str4.replace('GOOD','good',1)
print('str5:', str5)  # str5:  good GOOD study

字符串的拆分split

字符串.split(sep,maxsplit)        #将字符串按照sep进⾏分割(拆分)

-sep,字符串按照什么进⾏拆分,默认是空⽩字符(空格,换⾏\n,tab键\t)

-max_split,分割次数,⼀般不写,全部分割

-返回:将⼀个字符串拆分为多个,存到列表中

-注意:如果sep不写,想要指定分割次数则需要按照如下⽅式使⽤:

字符串.split(maxsplit=n)#n是次数

代码示例;

str1 = "hello world and itcast and itheima and Python"
# 1.将str1按照and字符进⾏拆分
result = str1.split('and')
print(result)  # ['hello world ', ' itcast ', ' itheima ', ' Python']
# 2,将str1按照and字符进⾏拆分,拆分⼀次
result2 = str1.split('and',1)
print(result2)  # ['hello world ', ' itcast and itheima and Python']
# 3.按照空⽩字符进⾏切割
result3 = str1.split()
print(result3)   # ['hello', 'world', 'and', 'itcast', 'and', 'itheima', 'and', 'Python']
# 4.按照空⽩字符进⾏切割,拆分⼀次
result4 = str1.split(maxsplit=1)
print(result4)  # ['hello', 'world and itcast and itheima and Python']

字符串的链接join

字符串.join(列表)        #括号中的内容主要是列表,可以是其他容器

#作⽤:将字符串插⼊到列表中每相邻的两个数据之间,组成⼀个新的字符串

-列表中的数据使⽤使⽤逗号隔开的

-注意点:列表中的数据必须都是字符串,否则会报错

代码示例:

list1 = ['good', 'good', 'study']
# 1.将列表中的字符串使⽤空格连起来
str1 = ' '.join(list1)
print(str1)  # good good study
# 2.将列表中的字符串使⽤and连起来
str2 = ' and '.join(list1)
print(str2)  # good and good and study

列表

列表 list,是使⽤最多的⼀种容器(数据类型)

列表中可以存储多个数据,每个数据之间使⽤逗号隔开

列表中可以存放任意类型的数据

定义;

# 定义空列表(没有任何数据的列表)
# 变量 = list()
list1 = list()
print(type(list1), list1)  # <class 'list'> []
# 类型转换list(容器)将其他的容器转换为列表
# 转换字符串会将字符串中的每个字符作为⼀个数据存⼊到列表中
list2 = list('hello')
print(type(list2), list2)  # <class 'list'> ['h', 'e', 'l', 'l', 'o']
# 直接使⽤[]进⾏定义(常⽤)
# 1定义空列表
my_list = []
print(my_list)  # []
# 2、定义非空列表
my_list1 = [1,'小米',3.14,False]
print(my_list1)  # [1, '小米', 3.14, False]

列表⽀持下标和切⽚,⻓度

列表⽀持下标和切⽚操作,使⽤⽅法和字符串中的使⽤⽅法⼀致

区别:列表的切⽚得到的是列表

代码示例:

list1 = ['小米',18,1.74,True]
# 获取第⼀个数据,名字
print(list1[0])
# 获取最后⼀个数据
print(list1[-1])
# 第⼀第⼆个数据
print(list1[0:2])
# 列表⻚⽀持len()求⻓度的,求数据元素个数
print(len(list1))

查找-查找列表中数据下标的⽅法

在字符串中使⽤的find⽅法查找下标的,不存在返回的是-1.

在列表中没有find⽅法,想要查找数据的下标,使⽤的index()⽅法

列表.index(数据,start,end)        使⽤和find⽅法⼀样,同时在字符串中也有index⽅法

区别:   返回,        index()⽅法,找到返回第⼀次出现的下标,没有找到代码直接报错

查找-判断是否存在

判断容器中某个数据是否存在可以使⽤in关键字

数据  in  容器        #如果存在返回True,如果不存在,返回False

查找-统计出现的次数

统计出现的次数,使⽤的是count()⽅法

列表.count(数据)        #返回数据出现的次数

代码示例;

my_list = [1,3,5,7,2,3]
num = my_list.index(3)
print(num)
# 找数据4出现的下标
# num1 = my_list.index(4)  代码会报错
# print(num1)
if 4 in my_list:num1 = my_list.index(4)print(num1)
else:print('不存在数据4')
# my_list.count(4)统计数据4出现的次数
if my_list.count(4) > 0:num2 = my_list.index(4)print(num2)
else:print('不存在数据4')

添加数据的⽅法

尾部添加(最常⽤)

列表.append(数据)        #将数据添加到列表的尾部

返回:返回的None(关键字,空),⼀般就不再使⽤变量来保存返回的内容

想要查看添加后的列表,需要打印的是列表

指定下标位置添加

列表.insert(下标,数据)        #在指定的下标位置添加数据,如果指定的下标位置本来有数据,原数据会后移

返回:返回的None(关键字,空),⼀般就不再使⽤变量来保存返回的内容

想要查看添加后的列表,需要打印的是列表

列表合并

列表1.extend(列表2)        #将列表2中的所有数据逐个添加的列表1的尾部

返回:返回的None(关键字,空),⼀般就不再使⽤变量来保存返回的内容

想要查看添加后的列表,需要打印的是列表

代码示例:

my_list = []
print(my_list)
# 1.列表中添加数据郭德纲
my_list.append('郭德纲')
print(my_list)
# 2.向列表的尾部添加郭麒麟
my_list.append('郭麒麟')
print(my_list)
# 3.在下标位置为1的位置添加数据岳岳
my_list.insert(1,'岳岳')
print(my_list)
# 4.在下标位置为1的位置添加数据于谦
my_list.insert(1,'于谦')
print(my_list)
list1 =['孙越','烧饼']
# 将list1中数据逐个添加到my_list中
my_list.extend(list1)
print(my_list)
# 将list1作为⼀个整体添加到my_list
my_list.append(list1)
print(my_list)

python基础3---循环和字符串列表相关推荐

  1. 4.Python基础语法(数字运算/字符串/列表/元组/字典/集合)

    4.1 数字运算 编程是将问题数据化的一个过程,数据离不开数字,Python的数字运算规则与我们学习的四则运算规则是一样的,即使不使用Python来编写复杂的程序,也可以将其当作一个强大的计算器.打开 ...

  2. Python基础之循环语句

    Python基础之循环语句 一.循环语句介绍 1.循环语句理解 2.循环语句示意图 二.循环语句的分类 三.循环控制语句 四.while循环 1.while死循环 2.while条件循环 五.brea ...

  3. Python基础之day03-字符串,列表,元组,字典

    Python基础之day03-字符串,列表,元组,字典 文章目录 Python基础之day03-字符串,列表,元组,字典 一.字符串 二.下标与字符串切片 三.列表 四.元祖 五.字典 六.公用方法 ...

  4. python基础 while循环练习

    这篇文章主要给大家分享的是5道关于python基础 while循环练习题,无论学习什么语言,练习都是必不可少的,下面文章的练习题挺精湛的,需要的朋友可以参考一下 1. 使用while循环输出1 2 3 ...

  5. python基础——while循环(九九乘法表,阶乘计算器,三角形图案打印输出)

    python基础--while循环(九九乘法表,阶乘计算器,三角形图案打印输出) 一.目的 本人最近在学习python的基础语法,此文章用来记录学习过程所用,本文章讲述的是while循环的一些基础实例 ...

  6. Python基础练习题:杂乱无章的页面列表【难度:1级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶

    Python基础练习题:杂乱无章的页面列表[难度:1级]: 你得到了一本古老的书,不幸的是有几页错误的位置,幸运的是你的计算机有一个从"1"到"n"的顺序的每个 ...

  7. python基础语法(二)列表

    往期推荐: python基础语法(一)range函数 python基础语法(二)列表 前言 一.列表的创建与删除 二.列表的查询操作 1. 获取列表中指定元素的索引 2. 获取列表中的单个元素 3. ...

  8. 大数据Python基础——第三章 字符串加列表练习

    目录 字符串 列表 字符串 一.什么是字符串 字符串或串(String)是由数字.字母.下划线组成的一串字符:它是编程语言中表示文本的数据类型:Python程序中的字符串在计算机内存中,统一使用uni ...

  9. Python基础篇(三)-- 列表、元组、字典、集合、字符串

    前面一篇简单介绍了Python的数据类型与运算符,这一节主要学习Python中5种常用序列结构:列表.元组.集合.字典和字符串的详细使用和一些技巧,下图概括了本篇的主要内容. 1 序列 在数学上,序列 ...

最新文章

  1. 《战狼2》电影观后感
  2. 用Java实现HTTP断点续传功能(ZT)
  3. C 语言中赋值表达式的返回的逻辑值
  4. 函数中返回char *类型
  5. 360的困兽之斗——重新探讨奇虎商业模式
  6. 2020 操作系统第零天复习(知识点总结)
  7. oracle体系结构和组件图示,Oracle 体系结构组件
  8. 矩形脉冲信号的_IQ信号的解调学习
  9. 在OEL5上安装配置Oracle Gird Control 10.2.0.5
  10. 【Python】datetime内置模块处理日期和时间
  11. 【操作系统/OS笔记03】启动、中断、异常和系统调用
  12. WebView的爬坑之路
  13. 7-6 jmu-python-随机生成密码 (10 分)习题解答
  14. linux curl证书错误,curl – SSL证书错误
  15. 程序员的人生——应届生北漂的第三天
  16. HDU 4607 Park Visit HDU暑期多校1
  17. GNU/Linux与Windows魔兽争霸3局域网对战安装与配置
  18. MATLAB强化学习工具箱(十一)训练DDPG智能体控制飞行机器人
  19. (转)如何应用MTCNN和FaceNet模型实现人脸检测及识别
  20. 利用github进行账号授权登录

热门文章

  1. 自写密码字典-解口令具体过程(海德拉)
  2. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(二)-docker安装与学习
  3. Java开发第一课认识计算机
  4. 第15篇 2D绘图(五)绘制图片
  5. 微信小程序(一)DES加密
  6. 别再稀里糊涂的使用ls命令了,带你重新认识linux查看文件信息的ls【内涵长文,非命令参数罗列】
  7. 程序员选什么方向好?前端还是后端?
  8. 农业种植大数据平台构建
  9. 为什么那么多公司在用快速开发平台开发软件?下表说明了一切
  10. 咋把计算机程序固定到任务栏中,win10我的电脑固定到任务栏如何操作_win10怎么把我的电脑放到任务栏...