一、字符串常用方法

s1 = '  abcsfsfaadfdd   '
s = s1.strip()
print(s)
print(len(s.strip()))
print(s.count('a')) # 某个字符串出现的次数
print(s.find('e')) # 如果没有查到,返回-1
print(s.find('aa'))
print(s.index('ad')) # 找某个字符串的下标,如果出现多次,返回第一次出现的index。如果查不到报错
print(s.index('f', 5)) # 从指定位置(包含此下标)查找某个字符串的下标,如果出现多次,返回第一次出现的index
print(s.strip()) # 去前后(首尾)的指定字符,不传参数代表去掉空格和换行符\n,如果传参,就去掉指定字符,比如s.strip(',')
print(s.rstrip()) # 去右侧(尾)的空格
print(s.lstrip()) # 去左侧(首)的空格
print(s.replace('a', 'A', 2)) # 替换字符串,替换的次数默认是全部替换
s2 = 'abCSfsFAadfdd132'

print(s2.upper())   # 把小写转成大写
print(s2.lower()) # 把大写转成小写
print(s2.isdigit()) # 是否为纯数字
print(s2.endswith('132')) # 判断以某字符串结尾,返回结果为True或False
print(s2.startswith('ab')) # 判断以某字符串开头,返回结果为True或False
print(s2.center(30, '*')) # 指定长度(返回的字符串的总长度),字符串居中.执行结果 *******abCSfsFAadfdd132*******
print('my car'.title()) # title 把间隔的单词的首字母大写
print(' '.isspace()) # 判断字符串是否是空格
print('123afDDW'.isupper()) # 判断字符串是否是大写字母
print('123afDDW'.islower()) # 判断字符串是否是小写字母
# 字符串格式化
name = 'lily'
today = '2020-08-22 18:29'
welcome2 = '{name},欢迎登陆.今天的日期是{today}'.format(today=today, name=name) # 如果{}中加了名字,可以使用名字对应,不应按照顺序传参
student = {'name': '小明', 'class': '20190301', 'score': 597.5}
s1 = '{class}班{name}总分:{score}'.format_map(student)
print(s1)
# 补零
s ='21'
print(s.zfill(4)) # 在字符串左侧补零,传的参数是总的长度
s = 'ab csfs faa df dd'
s_l = s.split()
print(s_l) # 如果不传参,默认按照''或空格进行分割,返回结果是list
print(s.split('a')) # 如果参数在字符串中不存在,则把字符串整个作为一个元素,放入list中返回
str2 = ','.join(s_l) # 使用指定的字符串用来连接list(不限于list)中的每个元素
str3 = ''.join(s_l)
print(str2)
print(str3)
'''
执行结果:
['ab', 'csfs', 'faa', 'df', 'dd']
['', 'b csfs f', '', ' df dd']
ab,csfs,faa,df,dd
abcsfsfaadfdd
'''

二、文件操作

'''
'r':只读,文件读取后,会有文件指针记录读取文件的行数
'w':只写,会把以前的内容清空掉,建议写新文件时,使用w模式
'a':只追加
'r+' == r+w(可读可写,文件若不存在就报错(IOError))
'w+' == w+r(可读可写,文件若不存在就创建)
'a+' ==a+r(可追加可写,文件若不存在就创建)
''' open(r'e:\user\lhy\xxx') # 遇到路径的时候,一定要加上r
f = open('a.txt', 'a+', encoding='utf-8')
result1 = f.read() # 读取文件中全部内容,以str返回结果
# result = f.readlines() # 读取文件中的全部内容,把每一行的内容作为一个元素,组成list返回
# result = f.readline() # 一次只读一行
# print(result1)
# print(result)
names = ['xiaohei', 'xiaobai', 'xiaolan']
numbers = [1, 2, 3, 4]
# f.seek(0) # 把文件指针放到文件内容最前面
# f.truncate() # 清空文件内容
# f.write('嘻嘻哈哈') # 必须传参为str,不用循环直接把str写入文件
# f.writelines() # 会自动循环,把内容写入文件。并且传参的可循环的数据类型中的元素必须是str
f.writelines(names)
# print(f.read())
f.close() # 关闭文件

python03篇 字符串常用方法和文件操作(一)的更多相关文章

  1. GO语言的进阶之路-Golang字符串处理以及文件操作

    GO语言的进阶之路-Golang字符串处理以及文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们都知道Golang是一门强类型的语言,相比Python在处理一些并发问题也 ...

  2. Python基础2 列表 元祖 字符串 字典 集合 文件操作 -DAY2

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  3. Node.js入门教程 第四篇 (流及文件操作)

    流 Stream是Node.js中的抽象接口,有不少Node.js对象实现自Stream. 所有的Stream对象都是EventEmitter 的实例. 例如:fs模块(用于读写操作文件的模块) fs ...

  4. Golang字符串处理以及文件操作

    一.整数 1.int与uint的初值比较以及其大小. 1 /* 2 #!/usr/bin/env gorun 3 @author :xxxx 4 Blog:http://www.cnblogs.com ...

  5. go文件操作大全

    参考Go官方库的文件操作分散在多个包中,比如os.ioutil包,我本来想写一篇总结性的Go文件操作的文章,却发现已经有人2015年已经写了一篇这样的文章,写的非常好,所以我翻译成了中文,强烈推荐你阅 ...

  6. python专题文件操作

    一 前言 本篇文章主要对文件操作进行说明,知识追寻者创作必属精品,读完本篇你将获得基础的文件操作能力,深入理解文件操作API,基础真的很重要,不管学什么知识,故看知识追寻者的专题系列真的很不错. 二 ...

  7. [转]Python文件操作

    前言 这里的“文件”不单单指磁盘上的普通文件,也指代任何抽象层面上的文件.例如:通过URL打开一个Web页面“文件”,Unix系统下进程间通讯也是通过抽象的进程“文件”进行的.由于使用了统一的接口,从 ...

  8. python(1) -文件操作

    很多时候我们需要对文件进行一些操作,比如读取并分析日志文件,写入日志文件等等.显然python也内置了对文件进行操作的函数. 读文件: >>> f = open('a.log','r ...

  9. Python 字符编码及其文件操作

    本章节内容导航: 1.字符编码:人识别的语言与机器机器识别的语言转化的媒介. 2.字符与字节:字符占多少个字节,字符串转化 3.文件操作:操作硬盘中的一块区域:读写操作 注:浅拷贝与深拷贝 用法: d ...

随机推荐

  1. OpenResty搭建高性能服务端

    OpenResty搭建高性能服务端   Socket编程 Linux Socket编程领域为了处理大量连接请求场景,需要使用非阻塞I/O和复用,select.poll.epoll是Linux API提 ...

  2. pytest - 失败重运行机制:rerun

    失败重运行机制 用例失败的情况下,可以重新运行用例 一旦用例失败,马上重新运行 安装插件:pip install pytest-rerunfailures 使用命令:--reruns 重试次数 如 - ...

  3. deeplearning搜索空间

    deeplearning搜索空间 搜索空间是神经网络搜索中的一个概念.搜索空间是一系列模型结构的汇集, SANAS主要是利用模拟退火的思想在搜索空间中搜索到一个比较小的模型结构或者一个精度比较高的模型 ...

  4. nvGRAPH原理概述

    nvGRAPH原理概述 nvGRAPH的API参考分析. 简介 数据分析是高性能计算的不断增长的应用.许多高级数据分析问题可以称为图形问题.反过来,当今许多常见的图形问题也可以称为稀疏线性代数.这是N ...

  5. 蓝牙mesh网络技术的亮点

    蓝牙mesh网络技术的亮点 The highlights of Bluetooth mesh networking technology 导言 蓝牙是当今最主要的低功耗无线技术之一,对无线设备用户和开 ...

  6. Waymo的激光雷达计划:进展如何?

    Waymo的激光雷达计划:进展如何? Waymo's Lidar Plan: How's It Working out? 许多自动驾驶汽车(AV)开发商一直在热烈追求激光雷达技术,这一技术之所以重要, ...

  7. java 全端开源 电商系统 springboot uniapp 小程序 前后端分离 高可用

    Lilishop B2B2C商城系统 官方公众号 & 开源不易,如有帮助请点Star 所有jar包均可从maven中央仓库下载,无二次封装jar包,全端开源,无后门,无监控. 介绍 官网:ht ...

  8. mybatis学习——properties属性实现引用配置文件

    Mybatis核心配置文件中有很多的配置项,配置文档的顶层结构如下: *注意:配置项的顺序不能颠倒,如果颠倒了它们的顺序,在MyBatis的自启动阶段会发生异常,导致程序无法运行. propertie ...

  9. 十三、给已安装的nginx动态添加模块

    给已安装的nginx动态添加模块说明:已经安装好的nginx,需要添加一个未被编译安装的模块,需要怎么弄呢?具体:这里以安装 --with-http_ssl_module模块为例nginx的模块是需要 ...

  10. Django基础之模型层(02)

    1 重要概念 # 多表查询 """ 正向查询 反向查询 当前查询对象是否含有外键字段 如果有就是正向 没有无则是反向 口诀: 正向查询按外键字段 多对多需要额外再加一个. ...