内容回顾

跟运维组学Python基础 day03

格式化输出 %s

name = input('Pleases input your name: ') # Zanaoprint('My name is %s'%(name))# My name is Zanao%是占位符,s指的是str,就是用str字符串来进行替换,位置一一对应

逻辑运算

在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。

成员运算

in 在

not in 不在

s = 'ZanaoTMDsb'

print('TMD'not in s) # 判断TMD不在s中

# 输出结果

False

比较运算

等于 == 不等于 != 大于 > 小于 < 大于等于 >= 小于等于 <=

编码

GBK国标 英文: 1个字节 中文: 2个字节

Unicode万国码 英文: 2个字节 中文: 4个字节

UTF-8 英文: 1个字节 欧洲: 2个字节 亚洲: 3个字节

今日内容

str字符型的索引(重点)

1. 索引:

索引就是下标. 切记, 下标从0开始。

起始位置下标是0(从左到右),-1(从右到左)

name = 'zanao'左 ➡️右 01234name = 'z a n a o'左 ⬅️右-5-4-3-2-1  从左到右:z的索引位0 a的索引位1 n的索引位2 从右到左:z的索引位-5 a的索引位-4 n的索引位-3 。。。 o的索引位-1 切记:右到左是从-1开始
print(name[2])结果:nprint(name[-3])结果:n

2.切片:

切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串

原则:顾头不顾尾

语法:str[start:end]

name = 'hello'name1 = name[:3]print(name1) #输出结果:hel 根据顾头不顾尾原则后面的l被丢弃

2.1按着顺序切(从左到右 或 从右到左)

2.2跳着截取

步长: 如果是整数, 则从左往右取. 如果是负数. 则从右往左取. 默认是1

切片语法:

Str[start:end:step]

Start:起始位置 end:结束位置 step:步长

识记点

  • 切片如果终止位置超出了范围不报错print(name[0:100])不报错
  • 索引取值的时候超出了索引的范围会报错print(name[100])报错原因:取不到100索引的值
  • 字符串,列表,元组 -- 都是有索引(下标)
  • 索引是准确的定位某个元素
  • 从左向右 0,1,2,3
  • 从右向左 -1,-2,-3,-4
  • 支持索引的都支持切片 [索引]

4.2字符串的操作

upper (全部大写)

name = "zanao"name1 = name.upper()print(name1)# 输出结果# ZANAO

lower (全部小写)

name = "ZANAO"name1 = name.lower()print(name1)# 输出结果# zanao

id (获取内存地址)

name = 'zanao'print(id(name))# 输出结果# 4543793504

startswith (以什么开头)

name = "zanao"print(name.startswith('z'))  # 判断name变量是以z开的头的# 输出结果# True

endswith (以什么结尾)

name = "zanao"print(name.endswith("i"))   # 判断name就是以i结尾# False

count (统计)

name = "zanao"print(name.count("a"))   # 查询某个内容出现的次数# 2

replace (替换) 重要!!!

str.replace('n','s') 前面是要被替换的内容 后面是新的

name = "zanao"name1 = name.replace('a','s')  # 替换 前面是老的,后面是新的name1 = name.replace('a','s',1)  # 替换 前面是老的,后面是新的 1是替换的次数# print(name1)# zsnso# zsnao

strip (除去头尾两边的空格/换行符) 重要!!!

name = " zanao   "name1 = name.strip()  # 可以写想要去掉的内容print(name1)if name == "zanao": # 这里判断两边的值是否相等用两个“=”表示,一个“=”表示判断内存地址是否一样     print(666)name = "   zanao     "print(name.strip())结果:zanao

split (分割) 重要!!!

name = 'Zanao, Joe'print(name.split(","))# ['Zanao', 'Joe']# 默认是以空格分割 ,也可以自己制定分割# 切记:分割后返回的内容是一个列表
1. 无参数的情况
a="my name is john"b="mynameisjohn"c="mynameisjohn"a=a.split()b=b.split()c=c.split()print(a)print(b)print(c)输出:['my', 'name', 'is', 'john']['my', 'name', 'is', 'john']['my', 'name', 'is', 'john']
2. 有参数的情况
d="my,name,is,john"e="my;name;is;john"f="my-name-is-john"d=d.split(",")e=e.split(";")f=f.split("-")print(d)print(e)print(f)输出:['my', 'name', 'is', 'john']['my', 'name', 'is', 'john']['my', 'name', 'is', 'john']
3. 当具有两个参数的情况
a="My,name,is,john,and,I,am,a,student"b1=a.split(",",1)b2=a.split(",",2)b8=a.split(",",8)b9=a.split(",",9)print(b1)print(b2)print(b8)print(b9)输出:['My', 'name,is,john,and,I,am,a,student']['My', 'name', 'is,john,and,I,am,a,student']['My', 'name', 'is', 'john', 'and', 'I', 'am', 'a', 'student']['My', 'name', 'is', 'john', 'and', 'I', 'am', 'a', 'student']

本节完~

如果对您有帮助请关注 咋闹运维组

字符串从右截取_跟运维组学Python基础day04(字符串str的索引和切片)相关推荐

  1. c语言随机生成整数存放一维数组_文科生学 Python 系列 7: Numpy 数组/索引和切片...

    第四课:本课内容: • 0. 导入 NumPy 包 • 1. 创建 NumPy 数组 • 2. 索引和切片 • 3. 读取文件 • 4. 布尔型索引 • 5. 数组的运算 • 6. 常用函数举例 Nu ...

  2. linux运维必学python吗_linux运维一定要学python吗?

    基于Python本身的优点:简单,易学,速度快,免费.开源,高层语言,可移植性,解释性,可扩展性,可嵌入性,丰富的库,独特的语法.Python已经成为现在编程的必备语言.作为"胶水语言&qu ...

  3. 带你学python基础:字符串

    还记得学习 C 语言的时候吗,是不是每天都在控制台程序上玩耍,那时发现编程太没意思了,就只能玩这些东西吗? 后来,发现其实,外面的世界还是非常的广阔的,但是,今天,既然是 python 基础,所以我们 ...

  4. python executemany执行延迟_运维架构师-Python 自动化运维开发-031

    *运维架构师-Python 自动化运维开发-031 十九.Python3 操作数据库 1.Python3 操作 MySQL 1.基本介绍 Python3 操作 MySQL 数据库 可以使用的模块是 p ...

  5. python运维开发培训_运维架构师-Python 自动化运维开发-014

    运维架构师-Python 自动化运维开发-014 九.标准数据类型 1.为什么编程语言中要有类型 类型有以下几个重要角色:对机器而言,类型描述了内存中的电荷是怎么解释的. 对编译器或者解释器而言,类型 ...

  6. python 自动运维架构师_运维架构师-Python 自动化运维开发-031

    *运维架构师-Python 自动化运维开发-031 十九.Python3 操作数据库 1.Python3 操作 MySQL 1.基本介绍Python3 操作 MySQL 数据库 可以使用的模块是 py ...

  7. python cs架构 运维_运维架构师-Python 自动化运维开发-005

    *运维架构师-Python 自动化运维开发-005 四.Ipython 交互式解释器 1.Ipython 简介 IPython外加一个文本编辑器 Windows系统下是IPython加notepad+ ...

  8. python 自动运维架构师_运维架构师-Python 自动化运维开发-013

    *运维架构师-Python 自动化运维开发-013 5.常用快捷键(附加课余研究) 1.Ctrl + Enter:在下方新建行但不移动光标: 2.Shift + Enter:在下方新建行并移到新行行首 ...

  9. python有架构师吗_运维架构师-Python 自动化运维开发-021

    *运维架构师-Python 自动化运维开发-021 十.文件操作 4.Python里的目录 所有文件都包含在各个不同的目录下,不过Python也能轻松处理.os模块有许多方法能帮你创建,删除和更改目录 ...

最新文章

  1. vue中如何加入横线_在word文档中如何快速添加页眉横线和删除页眉横线?
  2. SQL SERVER 自带系统存储过程分类
  3. 关于企业应用架构中前置机的作用
  4. Python基础——PyCharm版本——第八章、文件I/O(核心3、csv和excel解析)
  5. windows 小技巧
  6. python编码操作技巧总结
  7. 漫步数理统计二——集合论
  8. web中ajax实现二级联动,Ajax实现城市二级联动(一)
  9. 【论文写作】课程指导平台的开发中需求分析如何写
  10. java中的IO流之文件复制
  11. Java分析学生成绩
  12. 愚人节将至,怎么恶搞最过瘾
  13. java生产者消费者 阻塞_java之使用阻塞队列实现生产者,消费者模式
  14. [树形DP]贪吃的九头龙
  15. win7计算机管理无用户账户,win7系统右键没有以管理员身份运行解决方法
  16. s7五杀大数据英雄_王者七大记录,五杀最多的英雄竟然有他?这英雄跑的比关羽还快!...
  17. 【整理】嵌入式系统的各种常见外设
  18. 【LTspice】【使用.step命令对LTspice电路进行对比分析】
  19. mac——清理磁盘空间
  20. Solidity基础入门讲解

热门文章

  1. Linux 条件变量使用细节(为何调用 pthread_cond_wait 前加锁,函数内部解锁,返回时又加锁)
  2. 数据结构与算法 / 霍夫曼树、霍夫曼编码和解码
  3. C\C++ 结构体初始化的四种方法
  4. 物联网时代下的MCU,是市场倒逼还是彼此互相成就
  5. oracle方差和协方差函数,[转载]方差var、协方差cov、协方差矩阵(浅谈)(三)_函数cov...
  6. python语言语句快的标记是什么_一文搞懂Python程序语句
  7. mysql 查询数据 程序_MySQL 查询数据
  8. 广播变量kyro_Spark简介
  9. 职业高中高一计算机的基本知识,职业高中计算机论文
  10. uml 工具_【推荐】灵活而丰富UML建模工具Enterprise Architect!