1、格式

一对引号和三对引号可以表示字符串

(三引号保留换行)

2、下标

从0开始循序向下分配

str1='abcdefg'
print(str1)
print(str1[0])
print(str1[2])

3、切片

截取字符串、列表、元组的一部分

序列 [ 开始位置下标: 结束位置下标: 步长 ]   (P.S:不包含结束位置下标的内容)

str1=''
print(str1[0:5:1]) #
print(str1[2:5:2]) #
print(str1[2:5]) #
print(str1[:5]) #01234,开始下标不写即从头开始
print(str1[2:]) #23456789,结束下标不写即直到末尾
print(str1[:]) #0123456789 啥都不写即所有 #负数测试
print(str1[::-1]) #9876543210,步长为负数倒叙
print(str1[-4:-1]) #678,下标-1表示最后一个数据
#终极测试
print(str1[-4:-1:1]) #
print(str1[-4:-1:-1]) #下标开始到结束的方向和步长的方向冲突,没有输出

4、常用函数

4.1查找

find()

检测某个子串是否包含这个字符串中;

如果在,返回这个子串开始的位值下标,否则返回-1.

index()  同find(),不同的是找不到会返回异常,报错.
count() 返回某个字串在字符串中出现的次数
rfind()、rindex() r即从右侧开始查找,其他同原函数

exp:

#字符串序列.find ( 子串, 开始位置下标,结束位置下标 )
str1='hello world and itcast and itheima and python'
print(str1.find('and')) #
print(str1.find('and',15,30)) #
print(str1.find('ands')) #-1 #字符串序列.index ( 子串, 开始位置下标,结束位置下标 )
print(str1.index('and',15,30)) #
#print(str1.index('ands')) #报错 #字符串序列.count ( 子串, 开始位置下标,结束位置下标 )
print(str1.count('and',15,30)) #
print(str1.count('and')) #
print(str1.count('ands')) #

4.2 修改

replace()

替换

split() 按照指定字符分割字符串
join() 用一个字符或字串合并成字符串,即是将多个字符串合并成一个新的字符串
大小写转换
  • capitalize():将字符串的第一个字符转换成大写
  • title():将字符串每个单词首字母转换成大写
  • lower():将字符串中大写转小写
  • upper():将字符串中小写转大写

删除空白字符

strip()

  • lstrip():删除字符串左侧空白字符
  • rsplit():删除字符串右侧空白字符
  • strip():删除字符串两侧空白字符

字符串对齐

just()

  • ljust():左对齐,并使用指定字符(默认空格)填充
  • rjust():左对齐
  • center():居中对齐
my_str="hello"
str1=my_str.rjust(10)
str2=my_str.rjust(10,"*")
print(str1) # hello
print(str2) #*****hello

判断

  • startswith():检查字符串是否是以指定字串开头,是则返回True,否则返回False.

如果设置开始和结束位置下标。则在指定范围检查

字符串序列.startwith(字串,开始位置下标,结束位置下表)

  • endswith():同startwith(),不过指定字符串结尾
  • isalpha():判断是否都是字母
  • isdigit() 判断是否都是数字
  • isalnum();如果字符串至少又一个字符并且所有字符都是字母或者数字则返回true,否则返回false
  • isspace()判断是不是空白
old_str = 'hello world and itcast and itheima and python'

# 1、字符串序列.replace(旧子串,新子串,替换次数)
new_str = old_str.replace("and", "or") # 没有次数,全部替换
print(old_str) # 原有的字符串无修改,修改后的数据作为replace函数的返回值
print(new_str)
new_str1 = old_str.replace("and", "or", 10) # 10超出子串出现次数,全部替换
print(new_str1)
new_str2 = old_str.replace("and", "or", 1) # 1小于子串出现次数,替换1次
print(new_str2) # 2、字符串序列.split( 分割字符,num )
list1 = old_str.split('and')
print(list1) # ['hello world ', ' itcast ', ' itheima ', ' python']
list2 = old_str.split('and', 2)
print(list2) # ['hello world ', ' itcast ', ' itheima and python'] # 3、字符或字串.join( 多字符串组成的序列 )
old_list = ['aa', 'bb', 'cc']
new_list = '....'.join(old_list)
print(new_list) # aa....bb....cc

python基础入门之三 —— 字符串的更多相关文章

  1. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  2. 『Python基础-4』字符串

    # 『Python基础-4』字符串 目录 1.什么是字符串 2.修改字符串 2.1 修改字符串大小 2.2 合并(拼接)字符串 2.3 使用乘号'*'来实现字符串的叠加效果. 2.4 在字符串中添加空 ...

  3. Python基础入门总结

    Python基础入门教学 基础中的基础 列表.元组(tuple).字典.字符串 变量和引用 函数 python视频教程下载 基础中的基础 解释型语言和编译型语言差距: Python概述 解释器执行原理 ...

  4. [新手必备]Python 基础入门必学知识点笔记

    Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...

  5. Python基础数据类型之字符串

    Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >> ...

  6. python学习之基础入门,安装,字符串,数据转换,三元运算符

    python基础 我们要开始学习新的编程语言了,加油~~ python是“世界上最好的语言”,学习它当然是认为它是最好的所以我们才学(人生苦短我学python),python运用于不同的领域,采集分析 ...

  7. python基础入门 整型 bool 字符串

    整型,bool值,字符串 一.整型 整型十进制和二进制 整型:整型在Python中的关键字用int来表示; 整型在计算机中是用于计算和比较的 可进行+ - * / % //(整除) **(幂运算) 十 ...

  8. Python基础入门教程,Python学习路线图

    给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...

  9. Python怎么样入门?Python基础入门教程

    给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...

随机推荐

  1. robotframework,移动端(小程序)自动化,获取元素属性值的方法

    如下图,获取商品价格 属性值显示在content-desc内 传统的get text指定是无法获得到这个元素指定属性的值的 只有通过使用AppiumLibrary.get element attrib ...

  2. docker扫盲,面试连这都不会就等着挂吧!

    现在很多公司项目部署都是采用K8S docker容器方式,出门面试被问的概率极大,如果被面试官问docker相关知识点直接懵逼,那么基本就是被pass了,除非其他方面技术过硬.所以这种相对前沿的技术, ...

  3. BeautifulSoup标签定位方法总结

    首先说明一下两个基本函数 .find() 和 .findAll(). find()返回第一个符合要求的标签 findAll()返回一个由所有符合要求的标签组成的列表.除此之外基本相同. 0.直接定位 ...

  4. 使用 web3D 技术的风力发电场展示

    前言    风能是一种开发中的洁净能源,它取之不尽.用之不竭.当然,建风力发电场首先应考虑气象条件和社会自然条件.近年来,我国海上和陆上风电发展迅猛.海水.陆地为我们的风力发电提供了很好地质保障.正是 ...

  5. 新来个技术总监,禁止我们使用Lombok!

    我有个学弟,在一家小型互联网公司做Java后端开发,最近他们公司新来了一个技术总监,这位技术总监对技术细节很看重,一来公司之后就推出了很多"政策",比如定义了很多开发规范.日志规范 ...

  6. non-local static 变量初始化顺序不确定,带来的问题

    所谓static对象,其寿命从被构造出来直到程序结束为止,因此stack和heap-based对象都被排除.这种对象包括global对象.定义于namespace作用域内的对象,classes内.在函 ...

  7. 不要被C++“自动生成”所蒙骗

    http://www.cnblogs.com/fanzhidongyzby/archive/2013/01/12/2858040.html C++对象可以使用两种方式进行创建:构造函数和复制构造函数. ...

  8. @ComponentScan注解,basePackages参数通配符

    @ComponentScan(basePackages = "com.ofo.test")当basePackages的直使用通配符,使用**,不能使用*.引用:https://bl ...

  9. EOJ Monthly 2019.2 E 中位数 (二分+中位数+dag上dp)

    题意: 一张由 n 个点,m 条边构成的有向无环图.每个点有点权 Ai.QQ 小方想知道所有起点为 1 ,终点为 n 的路径中最大的中位数是多少. 一条路径的中位数指的是:一条路径有 n 个点,将这  ...

  10. 某cms审计思路,以及ci框架如何找寻注入点

    某cms审计思路,以及ci框架如何找寻注入点 ABOUT 之前闲着没事的时候审的某cms,之前看一群大表哥刷过一次这个cms,想着看看还能不能赶得上分一杯羹,还是审计出来些东西,来说一说一个前台注入吧 ...