字符串常见操作

索引

s = "abcdefg"
# 字符串数据,切片后取出的数据都是字符串类型
# 从左至右取值:从0开始
# 从右向左取值:从-1开始
print("s[0]:%s" % s[0]) # a
print("s[-1]:%s" % s[-1]) # g

切片

s = "abcdefg"
s1 = s[:] # 取全部
s2 = s[::2] # 从左至右取值,步长为2 aceg
s3 = s[2::-1] # 从2下标开始向左取值,步长为1 cba
s4 = s[-1::-2] # 从-1下标开始向左取值,步长为2 geca
s5 = s[2:5] # 从2下表开始取值,到5下表截至,不包含5 cde

字符串的常见操作

# 字符串的常用操作方法    字符串操作不会对原有字符串进行改变
s = "taibai"
word = "hello world"
print(s.count("i")) # 统计字符串中xx出现次数 返回数据int 2
print(s.upper()) # 字符串整个转换为大写 TAIBAI
print(s.lower()) # 字符串整个转换为小写 taibai
print(s.capitalize()) # 字符串首字母转换为大写 Taibai
print(word.capitalize()) # 整个字符串首字母转换为大写(整个字符串看为一个整体)Hello world
print(s) # 字符串操作不会对原有字符串进行改变 taibai # 应用 验证码不区分大小写(统一转换为大写或小写)
user_name = input("请输入用户名:")
password = input("请输入密码:")
code = "QwEr"
your_code = input("请输入验证码(不区分大小写):")
if your_code.lower() == code.lower():
if user_name == "zhangsan" and password == "1234":
print("登录成功")
else:
print("验证码或密码错误")
else:
print("验证码错误") # strip 去空(去除左右空格) 包含:\n、\t
str1 = " \nabcd31 12 \t"
print(str1.strip())
print(len(str1)) # 27 去空后,不影响原有字符串 # lstrip 去除左边空格
print(str1.lstrip()) # rlstrip 去除右边空格
print(len(str1.rstrip())) # 去除右边空格 # join 字符串拼接(用什么把字符串拼接起来)
str1 = "abcd" # 如果被拼接元素是字符串,则把字符串拆分成单独元素,再进行拼接
print("+".join(str1)) # a+b+c+d str2 = ["a1", "a2" ,"a3"] # 被拼接元素如果是列表,则列表中元素必须是字符串,如果是数字,则会报错
print(":".join(str2)) # 拼接后:a1:a2:a3 # split 把字符串以某元素分割 分割成多个字符串,放在列表中,不包含分割元素
str1 = "abcdefg"
print(str1.split("b")) # 分割后:['a', 'cdefg'] str2 = ":abd:def:efg:fgh"
print(str2.split(":", 2)) # 2为分割次数,表示分割两次 分割后:['', 'abd', 'def:efg:fgh'] # count 统计字符串出现次数
str1 = "abcdabcdefabceasd"
print(str1.count("abc")) # 3 # format
msg = "我叫{},今年{},就读于{}"
msg1 = msg.format("张三", 18, "墨尔本大学")
print(msg1) # 我叫张三,今年18,就读于墨尔本大学 # 可以直接再字符串后拼接
msg3 = "我叫{},今年{},就读于{}".format("李四", 25, "北京大学")
print(msg3) # 我叫李四,今年25,就读于北京大学 # 使用索引的方法,可以减少format后参数的个数,重复参数不用写多次
msg3 = "我叫{0},今年{1},就读于{2},不管我去到哪,我都叫{0}".format("李四", 25, "北京大学")
print(msg3) # 我叫李四,今年25,就读于北京大学,不管我去到哪,我都叫李四 # 使用参数名的方法传递,format后参数指定参数值
msg4 = "我叫{name},今年{age},就读于{adu},不管我去到哪,我都叫{name}".format(age=25, adu="北京大学", name="李四")
print(msg4) # is系列 判断是否是什么类型
a = "abc"
b = "abc123" # isalnum 字符串由字母或数字组成
print(a.isalnum()) # True
print(b.isalnum()) # True # isdecimal 字符串只由十进制组成 不包含罗马数字,中文数字,小数
print(a.isdecimal()) # False
print(b.isdecimal()) # False # isalpha 字符串只由字母组成
print(a.isalpha()) # True
print(b.isalpha()) # False # isdigit 判断是否是整数 不包含罗马数字,中文数字,小数
num1 = "1234"
num2 = "1234abc"
print(num1.isdigit()) # True
print(num2.isdigit()) # False

应用 判断是否是小数

# 应用   判断是否是小数
"""
1、判断小数点个数是否是1 count
2、以小数点分割 判断小数点右边是否是整数
3、判断小数点左边
是整数isdigit
如果是负整数
"""
def is_float(s):
str1 = str(s)
if str1.count(".") == 1:
left = str1.split(".")[0]
right = str1.split(".")[1]
if right.isdigit():
if left.count("-") == 1 and left.startswith("-"):
num3 = left.split("-")[-1]
if num3.isdigit():
return True
elif right.isdigit():
return True
else:
return False # 调用is_float函数执行
price = input("请输入商品价格:")
if is_float(price):
print("输入正确:%s" % price)
else:
print("输入有误:%s" % price)

python基础学习-字符串常见操作的更多相关文章

  1. Day2 Python基础学习——字符串、列表、元组、字典、集合

    Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...

  2. Python基础学习----字典常用操作

    字典的常见操作: # 字典: # 格式:{键值对,键值对} dict_demo={"name":"bai-boy","age":17} # ...

  3. python基础学习之文件操作&函数

    1.文件处理相关 1.编码问题 ①python2与python3中的默认编码: py2默认使用ASCII码,py3默认使用utf-8 ②为什么会出现中文乱码,中文乱码的情况有哪些? #sys.stdo ...

  4. python基础学习笔记——文件操作

    文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...

  5. python基础之字符串常用操作总结

    字符串的索引 s = 'ABCDLSESRF' # 索引 这两个很简单没什么说的 s1 = s[0] print(s1) # A s2 = s[2] print(s2) # C 切片 s = 'ABC ...

  6. Python基础学习----字符串的常用方法

    # Python字符串 # 大多数的语言定义字符串是双引号,Python既可以双引号,也可以单引号.但使用也有区别 # 单双引号的使用 My_name="bai-boy" Demo ...

  7. Python基础学习七 Excel操作

    python操作excel,python操作excel使用xlrd.xlwt和xlutils模块, xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的. ...

  8. Python基础学习四 文件操作(二)

    ####读取文件#### with open('goods_info.txt', 'r', encoding='utf-8') as f: f.seek(0) # 注意指针位置 goods_info ...

  9. Python基础学习三 文件操作(一)

    文件读写 r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[不可读: 不存在则创建:存在则只追加内容:] r+,[可读.可写:可追加,如果打开的文件不存 ...

随机推荐

  1. 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/ZRjGGy 可交互视频 此视频是可 ...

  2. [LeetCode] 1103. Distribute Candies to People 分糖果

    题目: 思路: 本题一开始的思路就是按照流程一步步分下去,算是暴力方法,在官方题解中有利用等差数列进行计算的 这里只记录一下自己的暴力解题方式 只考虑每次分配的糖果数,分配的糖果数为1,2,3,4,5 ...

  3. Ubuntu18.04LTS 文件系统简记

    Ubuntu18.04LTS 文件系统 了解Linux文件系统是熟悉掌握使用Linux系统的第一步 首先安装名为tree的工具 sudo apt install tree 运行 tree --help ...

  4. 手写Promise原理

    我的promise能实现什么? 1:解决回调地狱,实现异步 2:可以链式调用,可以嵌套调用 3:有等待态到成功态的方法,有等待态到失败态的方法 4:可以衍生出周边的方法,如Promise.resolv ...

  5. 修改webserver站点用户组权限

    例如webserver站点目录为webtest 搭建nginxwebserver服务器的时候,默认的用户和用户组权限为nginx:nginx, 即nginx.conf 和php-frm.conf 中默 ...

  6. 深入理解 vertical-align 属性

    语法 用来指定行内元素或表格元素的垂直对齐方式 相对父元素的值 baseline 使元素的基线与父元素的基线对齐.HTML规范没有详细说明部分可替换元素的基线,如textarea,这意味着这些元素使用 ...

  7. python如何用format进行进制转换与如何删除进制前缀

    10进行十进制,十六进制,八进制,二进制的转换:(#:保留进制前缀)对于带着进制前缀的,如"0x"“0o”“0b”,可以直接在后面加上’x’‘o’'b’进行删除:其他的一些小技巧: ...

  8. php中的进程

    pcntl扩展:主要的进程扩展,完成进程创建于等待操作. posix扩展:完成posix兼容机通用api,如获取进程id,杀死进程等. sysvmsg扩展:实现system v方式的进程间通信之消息队 ...

  9. 痞子衡嵌入式:恩智浦SDK驱动代码风格检查工具预览版

    大家好,我是痞子衡,是正经搞技术的痞子. 接上文 <恩智浦SDK驱动代码风格.模板.检查工具> 继续聊,是的,过去的三天里我花了一些时间做了一个基于 PyQt5 的 GUI 工具,可以帮助 ...

  10. async,await怎么用

    async声明一个函数是异步的,await用于等待异步完成,并且await只能在async中使用. 使用async,await并行处理请求,速度减半: 将多个promise直接发起请求,先执行asyn ...