一、字符串常用方法

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. Go基础结构与类型06---房贷计算器

    package main import ( "fmt" "math" "strconv" ) /* 输入的金额.年化利息(0.05代表5%) ...

  2. Mapper注解与MapperScan注解

    1.Mapper注解 在接口类上添加@Mapper,在运行时动态代理生成实现类 @Mapper public interface UserDao { // User getUser(); } 如果想要 ...

  3. AlexeyAB DarkNet YOLOv3框架解析与应用实践(三)

    AlexeyAB DarkNet YOLOv3框架解析与应用实践(三) ImageNet分类 您可以使用Darknet为1000级ImageNet挑战赛分类图像.如果你还没有安装Darknet,你应该 ...

  4. TensorRT 7.2.1开发初步

    TensorRT 7.2.1开发初步 TensorRT 7.2.1开发人员指南演示了如何使用C ++和Python API来实现最常见的深度学习层.它显示了如何采用深度学习框架构建现有模型,并使用该模 ...

  5. 孟老板 ListAdapter封装, 告别Adapter代码 (上)

    BaseAdapter封装(一) 简单封装 BaseAdapter封装(二) Header,footer BaseAdapter封装(三) 空数据占位图 BaseAdapter封装(四) PageHe ...

  6. vue3.0 props

    .orange { color: rgba(255, 165, 0, 1) } Vue3.0 props 1.你是否遇到了,引用props数据报错的问题? 在Vue3.0中,采用了proxy,让很多数 ...

  7. frp实现NAS外网访问

    开始 入手了NAS之后就看是漫漫的折腾内网穿透的不归路.用的最多最简单的是下面三种 QC:群晖自带的,速度在100kb左右,能不能连上有时候都是运气,极其不稳定. DDNS:最推荐的方式.上下行都取决 ...

  8. 【NX二次开发】UF_CSYS_map_point()函数,绝对坐标,工作坐标,部件之间坐标转换。

    UF_CSYS_map_point用来变换点的坐标,比较简单且实用.例如工作坐标系与绝对坐标系转换,一个部件的坐标与另一个部件坐标系之间的转换.下面的例子是在三个坐标下创建三个点相对坐标为{10,50 ...

  9. 「10.16晚」序列(....)·购物(性质)·计数题(DP)

    A. 序列 考场不认真读题会死..... 读清题就很简单了,分成若干块,然后块内递增,块外递减,同时使最大的块长为$A$ B. 购物 考场思路太局限了,没有发现性质, 考虑将$a_{i}$,排序前缀和 ...

  10. csp-s模拟测试57(10.2)「天空龙」·「巨神兵」·「太阳神」

    题目是古埃及神话??? A. 天空龙 傻逼模拟,看来没有滑天下之大稽QAQ,也没有打错快读(大雾...) B. 巨神兵 难度爆增,一脸懵比..... 60分状压: 因为是求有向图,关于有向图好像拓扑用 ...