python第一章(下)
python系列
python第一章(上)
python第二章
python第三章(上)
python第三章(下)
字符串
- python系列
- 一、字符串
- 定义方式
- 拼接
- 索引与切片
- 切片
- 设置取子串顺序
- 小作业
- 内置字符串运算符
- 内置字符处理函数
- 内置字符串处理方法
- 查找类
- 分隔类
- 连接类
- 大小写转换类
- 替换类
- 删除空白
- 判断开始字符
- 判断字符串类型
- 排版类
- format格式化方法
- 强制转换
- 总结
一、字符串
使用单引号或双引号括起来的内容
定义方式
- 单引号(‘’),其中可以包含双引号。
- 双引号(“”),其中可以包含单引号。
- 三单引号(‘’’ ‘’'),其中可以包含单引号和双引号,可以跨行。
- 三双引号(“”" “”"),其中可以包含单引号和双引号,可以跨行。
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])
- . 运行截图
切片
- python中文字符也提供区间访问方式,采用[头下标:尾下标]的方式,这种访问方式叫切片
- s[头下标:尾下标]表示在字符串去索引值从头下标到尾下标(不包括尾下标)的子字符串
- 若头下标缺省,表示从开始取字符串,若尾下标缺省,表示取到最后,若头下标和尾下标缺省,则取怎个字符串。
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第一章(下)相关推荐
- python第一章笔记_head first python(第一章)–学习笔记
head first python(第一章)--学习流程图 1.安装python 这里是用python3的,除了windows之外,linux和macos都自带了,只是版本没有这么新. 举例:cent ...
- 趣学PYTHON 第一章python不是大蟒蛇
趣学PYTHON 第一章python不是大蟒蛇 把我自己的学习记录在这里,留下一片回忆. Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:3 ...
- Python第一章-基础知识
第一章:基础知识 1.1 安装python. 直接官网下载最新的python然后默认安装就可以了,然后开始菜单里找到pyhton *.*.* Shell.exe运行python的交互shell ...
- 【python第一章 基础捋顺,第二章 python基础语法】
第一章 基础捋顺,第二章 python基础语法 第一章 基础捋顺 第二章 python基础语法 2.1输入输出 2.2代码注释 2.3代码缩进 2.4命名规范 2.5变量 2.6基本数据类型 2.7数 ...
- Python(第一章)版本介绍,环境准备及IDLE使用
第一章 本章概览 Python是一种跨平台,开源的免费的.解释型的高级编程语言.近几年发展势头迅猛.应用领域十分广泛,在Web编程.图像处理.黑客编程.大数据处理.网络爬虫和科学计算等领域都能找到Py ...
- 给普通人的Python——第一章
文章目录 前言 1. 简单语法 1.1 把python当计算器 1.2 什么是变量 1.3 运用逻辑判断 1.3.1 条件判断 1.3.2 复合条件判断 1.4 重复的艺术:循环 1.4.1 whil ...
- python控制语句第一章_【原创】Python第一章
Python总是从第一行代码开始逐步执行,而C是从main函数开始执行. 在Python中,一切东西都是对象. 在Python中,没有C的花括号,不能任意排版,属于同一个语句块的语句需要使用相同的对齐 ...
- 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 ...
- 流畅的python第一章_《流畅的Python》第一章学习笔记
一摞python风格的纸牌from collections import namedtuple Card = namedtuple('Card', ['rank', 'suit']) # 构建只有少数 ...
最新文章
- 如果有的明星不会使用计算机,盘点娱乐圈不会用电脑手机的10大原始明星:最后一位出书都是手写...
- 直接路径读取对于延迟块清除的影响
- vs2013编译boost1.55.0 32/64位
- 十年编程经验输给新晋AI工程师,6个月我们带你绝地反击
- C++变量、函数在内存中的情况
- windows下启动activemq闪退
- Consecutive Sum LightOJ - 1269(区间异或和)
- python getostime_python转换在os.utime中使用的datetime
- axios请求失败重新发起请求_axios请求超时,设置重新请求的完美解决方法
- 【百度网盘】老罗android开发视频教程[压缩后3.63G]
- 计算机cpu天体图,cpu性能天梯排行图 最新的2021年电脑cpu天梯图5月高清图
- 【数据挖掘】2022年2023届秋招奇虎360机器学习算法工程师 笔试题
- 选择服务器托管时应该注意什么?
- PDF文件转换成什么格式最适合编辑?
- Cocos2d-x瓦片地图及本地存储
- 保留两位小数(四舍五入)
- kswapd和pdflush
- 【京东云】通过SDK创建多个弹性IP
- bapi sap 创建物料_SAP调用BAPI创建物料主数据
- 行为金融(五):非有效市场