python系列

python第一章(上)
python第二章
python第三章(上)
python第三章(下)


字符串

  • python系列
  • 一、字符串
    • 定义方式
    • 拼接
    • 索引与切片
      • 切片
      • 设置取子串顺序
      • 小作业
      • 内置字符串运算符
      • 内置字符处理函数
    • 内置字符串处理方法
      • 查找类
      • 分隔类
      • 连接类
      • 大小写转换类
      • 替换类
      • 删除空白
      • 判断开始字符
      • 判断字符串类型
      • 排版类
      • format格式化方法
    • 强制转换
  • 总结

一、字符串

使用单引号或双引号括起来的内容

定义方式

  1. 单引号(‘’),其中可以包含双引号。
  2. 双引号(“”),其中可以包含单引号。
  3. 三单引号(‘’’ ‘’'),其中可以包含单引号和双引号,可以跨行。
  4. 三双引号(“”" “”"),其中可以包含单引号和双引号,可以跨行。
print('Hello XiaQi')
print("'Book'书")
print('''"Python程序设计"
“C++程序设计”''')
  • 运行截图

拼接

name=input("name:")
country=input("country:")
s="The world is so big."+name+"want to"+country+"see see"
print(s)
  • 运行截图

索引与切片

s='Hello XiaQi'
print(s[0],s[-1],s[8],s[-2])
  • . 运行截图

切片

  1. python中文字符也提供区间访问方式,采用[头下标:尾下标]的方式,这种访问方式叫切片
  2. s[头下标:尾下标]表示在字符串去索引值从头下标到尾下标(不包括尾下标)的子字符串
  3. 若头下标缺省,表示从开始取字符串,若尾下标缺省,表示取到最后,若头下标和尾下标缺省,则取怎个字符串。
s='Hello XiaQi'
print(s[0:5],s[6:-1])
print(s[:5],s[6:])
print(s[5:2])#头下标大于尾下标,输出为空
print(s[:])
  • 运行截图

设置取子串顺序

  • s[头下标:尾下标:步长]
  • 当步长值大于0,表示从左向右取字符,小于0时,从右向左取字符。
  • 步长绝对值减一,表示每次取字符的间隔为多少
s='Hello XiaQi'
print("s=",s)
print("s[0:5:1]=",s[0:5:1])#正向取
print("s[0:6:2]=",s[0:6:2])#正向取,间隔一个字符
print("s[0:6:-1]=",s[0:6:-1])#反向取,但是头下标小于尾下标,输出为空
print("s[4:0:-1]=",s[4:0:-1])#反向去,索引值0取不到
print("s[4::-1]=",s[4::-1])#反向取,从索引值4一次取到开头
print("s[::-1]=",s[::-1])#反省取整串
print("s[::-3]=",s[::-3])#反向取,间隔两个字符

  • 从以上代码总结
  • 若正向取,头下标大于尾下标,则输出为空,
  • 若反向去,头下标下雨尾下标,则输出为空
  • 尾下标的值是取不到的,只能取到尾下标前一个,不管正向还是反向,

小作业

  • 输入1~12的整数,输出对应的月份名称缩写
  • tip:months=“JanFebMarAprMayJunJulAugSepOctNovDec”

内置字符串运算符

运算符 描述
”+“ 字符串拼接,例"AB"+"123"结果为AB123
”*“ 字符串赋值,例"Tom*3"结果为TomTomTom
”in“ 判断是否为子串,例"H" in "Hello"结果为True,“s” in "Hello"结果为False
s='Hello'+"XiaQi"
print(s)
print(s*2)
a="H"in"Hello"
b="h"in"Hello"
print(a,b)
  • 运行截图

内置字符处理函数

函数 描述
len(x) 返回字符串长度
str(x) 将任意类型转化为字符串类型
chr(x) 返回Unicode编码为x的字符
ord(x) 返回字符x的Unicode编码值
hex(x) 将整数x转换为十六进制,并返回小写字符串形式
oct(x) 将整数x转换为八进制,并返回小写字符串形式
s="好好学习 天天向上"
print(len(s))#返回长度
s=123
print(type(s))
a=str(s)#返回的字符串赋给a
print(type(a))
print(hex(62))#转换十六进制
print(oct(62))#转换八进制
  • 运行截图
  • 使用内置字符处理函数时,原字符串对象是没有改变的,都是返回修改之后的新字符串,对原字符没有修改

内置字符串处理方法

查找类

方法 描述
find(x) find用来查找一个字符串在另一个字符串指定范围(默认整个字符串)中首次出现的位置,如果不存在返回-1
rfind(x) rfind用来查找一个字符串在另一个字符串指定范围(默认整个字符串)中最后一次出现的位置,如果不存在返回-1
index(x) find用来查找一个字符串在另一个字符串指定范围(默认整个字符串)中首次出现的位置,如果不存在返回异常
rindex(x) find用来查找一个字符串在另一个字符串指定范围(默认整个字符串)中首次出现的位置,如果不存在返回异常
count(x) 返回一个字符串在另一个字符串中出现的次数,不存在返回0
s="bird,fish,monkey,rabbit"
print("s.find('fish')=",s.find('fish'))#打印第一次出现的位置
a=s.index('monkey')#返回第一次出现的位置赋给a
print(a)
print("s.count('i')=",s.count('i'))#打印出现的次数
  • 运行截图
  • 使用内置字符处理方法时,字符串对象是没有改变的,都是返回修改之后的新字符串对原字符没有修改

分隔类

方法 描述
split(x) 以指定字符为分隔符,从原字符串左端开始将其分隔成多个字符串,并返回包含分隔结果的列表(以后的章节介绍)。默认按空白符号分隔
rsplit(x) 以指定字符为分隔符,从原字符串右端开始将其分隔成多个字符串,并返回包含分隔结果的列表(以后的章节介绍)
partition(x) 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串,从左边搜索
rpartition(x) 只是该方法是从目标字符串的末尾也就是右边开始搜索分割符。
s="bird,fish,monkey,rabbit"
print(s)
a=s.split(',')#以逗号分隔返回列表形式
print(a)
s="I am a boy"
print(s.split())
  • 运行截图

连接类

方法 描述
join(x) 将列表多个字符串进行连接,并在相邻两个字符串之间插入指定字符,返回新串
li=['apple','banana','pear','peach']
print(li)
print(':'.join(li))#将列表里的多个字符串用:连接
print('-'.join(li))#将列表里的多个字符串用-连接(注意后面是点不是逗号)
  • 运行截图

大小写转换类

方法 描述
lower() 返回小写
upper() 返回大写
capitalize() 首字母大写
title() 每个单词首字母大写
swapcase() 大小写互换

s="I have two big eyes"
print('s.lower',s.lower())#转换小写
print('s.upper',s.upper())#转换大写
print('s.capitalize()',s.capitalize())#首字母大写
print('s.title()',s.title())#每个单词首字母大写
print('s.swapcase()',s.swapcase())#大小写呼唤
  • 运行截图

替换类

方法 描述
replace(x,y) 替换字符串中指定的字符或子串,每次只能替换一个字符或子串,类似Word,记事本等文本查找功能和替换功能,不修改原字符串,返回新串
s="你是我的小呀小苹果儿"
print(s.replace("小","small"))#将小换成small
  • 运行截图

删除空白

方法 描述
strip() 删除两端空白字符或指定字符
rstrip() 删除右端空白字符或指定字符
lstrip() 删除左端空白字符或指定字符
s="    abd    "
print("s=",s)
print("s.strip()=",s.strip())#删除两端空白
print("s.lstrip()=",s.lstrip())#删除右端空白
print("s.rstrip()=",s.rstrip())#删除左端空白
s="======abd======"
print(s)
print("s.strip('=')=",s.strip('='))#删除=
  • 运行截图

判断开始字符

方法 描述
startswith(x) 检测字符串是否以指定字符开始
endswith(x) 检测字符串是否以指定字符结束
s="Python程序设计.py"
print(s.startswith("Python"))
print(s.endswith("py"))
  • 运行截图

判断字符串类型

方法 描述
isupper() 判断字符串是否全为大写
islower() 判断字符串是否全为小写
isdigit() 判断字符串是否全数字
isalnum() 判断字符串是否数字或字母
isalpha() 判断字符串是否全为字母
s='years'
print("s=",s,"s.islower()=",s.islower())#判断字符串是否全为小写
s='YEARS'
print("s=",s,"s.isupper()=",s.isupper())#判断字符串是否全为大写
s="1231513"
print("s=",s,"s.isdigit()=",s.isdigit())#判断字符串是否全数字
s="he is 10 years old"
s=s.replace(" ","")
print("s=",s,"s.isalnum()=",s.isalnum())# 判断字符串是否数字或字母
print("s=",s,"s.isalpha()=",s.isalpha())#判断字符串是否全为字母
  • 运行截图

排版类

方法 描述
center(x,y) 指定x宽度,居中对齐,不足的用y填充
ljust(x,y) 指定x宽度,左对齐,不足的用y填充
rjust(x,y) 指定x宽度,右对齐,不足的用y填充
zfill(x) 指定x宽度,在字符串左侧以0填充
s="Hello world"
print(s)
print("s.center",s.center(30,"="))
print("s.ljust",s.ljust(20,"*"))
print("s.rjust",s.rjust(20,"*"))
print("s.zfill",s.zfill(20))
  • 运行截图

format格式化方法

  • 基本语法通过“{}”和”:“来代替以前的”%“。format可以有多个输出项,位置可以指定顺序
print("我是{}班{}号的学生{}".format("软工521",28,"XiaQi"))
print("我是{1}班{2}号的学生{0}".format("XiaQi","软工521",28))#后面的参数改变了位置,
  • 运行截图
  • 当使用format格式化字符串时,需要在”{}“中首先输入”:“。
  • ”:“称为格式引导符。”:“之后分别设置<填充字符><对齐方式><宽度>
设置项 可选值
<填充字符> ”*“,”=“等,只能一个,默认空格
<对齐方式> ^(居中)<(左对齐)>(右对齐)
<宽度> 一个整数,指格式化后整个字符串的字符个数
print("{:*^20}".format("XiaQi"))#宽度20,居中对齐,*填充
print("{:=<20}".format("XiaQi"))#宽度20,左对齐,=填充
print("{:.2f}".format(3.1415926))#保留两位小数
print("{:5d}".format(24))##宽度5,右对齐,空格填充,整数形式输出
print("{:x>5d}".format(24))#宽度5,左对齐,x填充,整数形式输出
  • 运行截图

强制转换

  • 在转换的数值前加想转换的类型
  • 浮点型转换整形不会四舍五入
s=2.25
print(int(s))#转换整形
s=5
print(float(s))#转换浮点型
  • 运行截图
  • 强制转换是将表达式强制转换所需的类型
r=float(input("输入圆的半径"))
print(r)
year=int(input("输入年份"))
print(year)
  • 强制转换可代替eval
  • 运行截图

总结

主要对字符串的操作方法,了解即可,需要用在查。

python第一章(下)相关推荐

  1. python第一章笔记_head first python(第一章)–学习笔记

    head first python(第一章)--学习流程图 1.安装python 这里是用python3的,除了windows之外,linux和macos都自带了,只是版本没有这么新. 举例:cent ...

  2. 趣学PYTHON 第一章python不是大蟒蛇

    趣学PYTHON 第一章python不是大蟒蛇 把我自己的学习记录在这里,留下一片回忆. Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:3 ...

  3. Python第一章-基础知识

    第一章:基础知识 1.1 安装python.     直接官网下载最新的python然后默认安装就可以了,然后开始菜单里找到pyhton *.*.* Shell.exe运行python的交互shell ...

  4. 【python第一章 基础捋顺,第二章 python基础语法】

    第一章 基础捋顺,第二章 python基础语法 第一章 基础捋顺 第二章 python基础语法 2.1输入输出 2.2代码注释 2.3代码缩进 2.4命名规范 2.5变量 2.6基本数据类型 2.7数 ...

  5. Python(第一章)版本介绍,环境准备及IDLE使用

    第一章 本章概览 Python是一种跨平台,开源的免费的.解释型的高级编程语言.近几年发展势头迅猛.应用领域十分广泛,在Web编程.图像处理.黑客编程.大数据处理.网络爬虫和科学计算等领域都能找到Py ...

  6. 给普通人的Python——第一章

    文章目录 前言 1. 简单语法 1.1 把python当计算器 1.2 什么是变量 1.3 运用逻辑判断 1.3.1 条件判断 1.3.2 复合条件判断 1.4 重复的艺术:循环 1.4.1 whil ...

  7. python控制语句第一章_【原创】Python第一章

    Python总是从第一行代码开始逐步执行,而C是从main函数开始执行. 在Python中,一切东西都是对象. 在Python中,没有C的花括号,不能任意排版,属于同一个语句块的语句需要使用相同的对齐 ...

  8. python导入excel模块_Excel到python第一章python利用pandas和numpy模块导入数据

    原博文 2019-08-29 21:18 − import numpy as np import pandas as pd # 导入数据 # 读取csv数据 df = pd.read_csv(open ...

  9. 流畅的python第一章_《流畅的Python》第一章学习笔记

    一摞python风格的纸牌from collections import namedtuple Card = namedtuple('Card', ['rank', 'suit']) # 构建只有少数 ...

最新文章

  1. 如果有的明星不会使用计算机,盘点娱乐圈不会用电脑手机的10大原始明星:最后一位出书都是手写...
  2. 直接路径读取对于延迟块清除的影响
  3. vs2013编译boost1.55.0 32/64位
  4. 十年编程经验输给新晋AI工程师,6个月我们带你绝地反击
  5. C++变量、函数在内存中的情况
  6. windows下启动activemq闪退
  7. Consecutive Sum LightOJ - 1269(区间异或和)
  8. python getostime_python转换在os.utime中使用的datetime
  9. axios请求失败重新发起请求_axios请求超时,设置重新请求的完美解决方法
  10. 【百度网盘】老罗android开发视频教程[压缩后3.63G]
  11. 计算机cpu天体图,cpu性能天梯排行图 最新的2021年电脑cpu天梯图5月高清图
  12. 【数据挖掘】2022年2023届秋招奇虎360机器学习算法工程师 笔试题
  13. 选择服务器托管时应该注意什么?
  14. PDF文件转换成什么格式最适合编辑?
  15. Cocos2d-x瓦片地图及本地存储
  16. 保留两位小数(四舍五入)
  17. kswapd和pdflush
  18. 【京东云】通过SDK创建多个弹性IP
  19. bapi sap 创建物料_SAP调用BAPI创建物料主数据
  20. 行为金融(五):非有效市场

热门文章

  1. Jmeter从入门到精通-看这一篇就够了
  2. 分享:大讲台在线学习平台怎么样,靠谱吗?
  3. python mysql_config not found_解决问题:OSError: mysql_config not found
  4. 用汇编语言编程的计算机
  5. 四川省乐山市谷歌高清卫星地图下载
  6. 《软件工程导论》考研复试整理
  7. 热评云厂商:品高云4.62亿元,发力行业云,掘金实属不易
  8. 【阿里云·云原生架构】白皮书 —— 云原生架构原则
  9. 判断用户是否登录成功
  10. 2.20 锤子剪刀布