Python基础二_操作字符串常用方法、字典、文件读取
一.字符串常用方法:
name.captitalize() #字符串首字母大写
name.center(50,'*') #字符串居中
name.count('欢') #查询次数
name.endswith('.xls') #判断字符串是否以XX结尾
name.start with('138') #判断字符串是否以XX开头
name.uper() #都变大写
name.lower() #都变小写
name.find('p') #查找元素p,找不到元素下标,不会报错,返回-1
name.index('p') #找不到元素会报错
name[1] #字符串也可根据下标来取值
name.isdigit() #判断是否为纯数字
name.isidentifier() #判断是否为合法的变量名
name.strip() #去掉字符串两边的内容,默认去掉空格和换行符
name.lstrip() #去掉左边的
name.rstrip() #去掉右边的
name.replace() #替换字符串,把前面的替换成后面的
name.zfill() #补0
name.split() #分割字符串 (把字符串变成一个list。默认是以空格和换行符分割的),传什么以什么分割
name.join() #是把list变为字符串,以某个字符串连接 eg:"lxy、zyf、wdz" print('、'.join(stus)) ----->lxy、zyf、wdz
import string
string.ascii_letters #所有的大、小写字母
string.ascii_lowercase #所有的小写字符
string.ascii_uppercase #所有的大写字符
string.digits #所有的数字
string.punctuation #所有的特殊字符
二、数组
数组循环
stus=['xyz','2','3','4']
for stu in stus:
print(stu)
切片:list取值的一种方式
stus[1:3] #顾头不顾尾 stus[:3] 如果开始的元素不写的话,就是从最前面的开始
stus[-1] #代表最后一个元素
stus[1:] #结束元素不写的话,代表最值到最后一位
stus[:] #取整个list
stus[0:11:2] #第二个:后的值代表步长,隔几个元素取一次 步长为负数,下标也要为负数
stus[:-1] #反转显示,切片同样适用于字符串
三.元组 list,但它是不可变的
元组一旦定义好,就不能再变
字符串也是一种不可变的,不能修改,想要改变就需重新赋值
s='abcEFGabc'
print(s.replace('abc',''))
print(s) --------->abcEFGabc
想要改变s的值,需重新进行赋值
s=s.replace('abc','')
print(s) ---------->EFG
a=[1,1,2,3,4,5,6,7]
for i in a:
if i%2!=0:
a.remove(i)
print(a) ---------->1,2,4,6
为什么还有1呢?
第一次循环:a=[1,2,3,4,5,6,7]
第二次循环:a[1]的值变为了2,跳过了1,所以print中有1
定义变量:a,b,c=1,2,3
#定义a,b,c三个变量,分别为1,2,3
a,b=1,2
b,a=a,b ------>交换a,b的值
b,a=a,b 不等同于b=a a=b
非空即真,非0即真,None
not的意思是取反
四.字典 k-value 字典是无序de
shenyang={'name':'沈阳','age':18}
增:
shenyang['friend']='butty'
shenyang.setdefault('home','sanhuan')
#setdefault这种方式,如果key已存在,那么就不会修改
修改:
shenyang['friend']='ugly'
删除:
shenyang.pop['friend'] #指定key删除
del shenyang['age'] #用dels删 ,key不存在时,会报错
取值:
shenyang['abc']
shenyang.get('key')
shenyang.clear() #清空字典
shenyang.popitem() #随机删除一个key
shenyang.update(yaoyuan) #把后面的字典加到前面的字典中
shenyang.valus() #全部value
shenyang.keys() #全部key
for k,v in shenyang.item():
print(k,v) #通过.item()方式循环获取k,v
高效循环字典方式:
d={'a':1,'b':2}
print(d.item())
---->dict.items([('b',2),('a',1)])
for k in d:
print(k,d,get(k))
五.文件读写
1、打开文件
2 、对他读/或者写
3、关闭文件
open() file()
1、有没有清空以前的内容
2、能不能读到东西
3、文件不存在的时候会不会报错
f = open(r'haha.txt','a+',encoding='utf-8')
print('read', f.read() ) #获取文件里面的所有内容
print('readline',f.readline()) #读取文件一行的数据
print('readllines',f.readlines()) #获取文件里面所有的数据,每一行的数据放到一个list里面
f.write('5dianban')
names = ['lxy\n','zyf\n','zxd\n','lcs\n']
for name in names:
f.write(name+'\n')
f.writelines(names) #传一个list,然后把list里面的每一个元素写入到文件中
f.seek(0)#移动文件指针到最前面
print('read',f.read())
f.close()
只读模 r 读写模式 r+
只能读,不能写,文件不存在会报错 #打开不存在的时候也会报错
写模式 w 写读模式
覆盖以前文件,里面的内容,不能读,文件不存在的话,会帮你创建一个
只要沾上r,文件不存在肯定会报错
只要沾上w,文件内容肯定会被清空
追加模式 a+
能读、能写、不会清空以前的内容,文件不存在会创建
Python基础二_操作字符串常用方法、字典、文件读取的更多相关文章
- Day2 - Python基础2 列表、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 数字操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 ...
- python基础(2)字符串常用方法
python字符串常用方法 find(sub[, start[, end]]) 在索引start和end之间查找字符串sub 找到,则返回最左端的索引值,未找到,则返回-1 start和end都可 ...
- Python基础(二):操作基本数据类型
Python是一门解释型语言,它的优势在于代码简洁,易于理解,可以通过大量已封装好的内建方法和第三方模块方法完成日常所需的操作. 字符串 索引 起始下标为0 (从前往后数),末尾下标为-1(从后往前数 ...
- python基础课程_学习笔记21:文件和材料
文件和材料 打开文件 open功能是用来打开文件,语法例如,下面的: open([name[,mode[,buffering]]) open函数使用一个文件名称作为唯一的强制參数,然后返回一个文件对象 ...
- python基础之数字、字符串、列表、元组、字典
Python基础二: 1.运算符: 判断某个东西是否在某个东西里面包含: in 为真 not in 为假 (1).算术运算符: 运算符 描述 实例 + 加 表示两个对象相加 a + b输出结果3 ...
- python基础深入(元组、字符串、列表、字典)
python基础深入(元组.字符串.列表.字典) 一.列表 1.追加 >>>list = [1,2,3,4] #用于在列表末尾添加新的对象,只能单个添加,该方法无返回值,但是会修改原 ...
- Python 基础 二
Python 基础 二 今天对昨天学习的Python基础知识进行总结,学而不思则惘,思而不学则殆! 一.先对昨天学习的三大循环的使用情况进行总结: 1.while循环的本质就是让计算机在满足某一条件的 ...
- C#_02.12_基础二_.NET类型存储和变量
C#_02.12_基础二_.NET类型存储和变量 一.核心一句:C#程序是一组类型声明(留待后面慢慢体会,现在不是很理解,不强说了) 二.数据类型: 1.预定义了16种数据类型: 其中13种简单数据类 ...
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
随机推荐
- 【SVM、决策树、adaboost、LR对比】
一.SVM 1.应用场景: 文本和图像分类. 2.优点: 分类效果好:有效处理高维空间的数据:无局部最小值问题:不易过拟合(模型中含有L2正则项): 3.缺点: 样本数据量较大需要较长训练时间:噪声不 ...
- 安卓端数据导出成txt文件
toExport() { if (this.dataList == false) { this.$createDialog({ type: "alert", content: &q ...
- cnpm与npm的区别
原文地址:https://blog.csdn.net/chi1130/article/details/72773278 npm介绍 说明:npm(node package manager)是nodej ...
- mac 安装geckodriver和chromedriver
Last login: Fri Apr :: on ttys000 (base) localhost:~ ligaijiang$ env TERM_PROGRAM=Apple_Terminal SHE ...
- visual studio 2017 (vs2017安装)
vs2017要找到控制台模板,要安装模块: 安装完之后: 新建控制台项目: 不使用预编译头: 推荐安装官方扩展: https://marketplace.visualstudio.com/items? ...
- 好吧,我承认我是爱瞎折腾----利用YDUI改变页面UI
上周恒丰代付接口上线投产后,我做了一个“恒丰代付检查工具”,用途是,当线上调用恒丰代付出现了问题订单时,可以在这个工具页里做相应的弥补. 我项目里其他一些工具页的UI用的是YDUI.YDUI号称是“一 ...
- UGUI之Slider使用,制作血条
用Slider来控制Cube旋转 Slider是滑动条.
- Linux平台Oracle 12.1.0.2 单实例安装部署
主题:Linux平台Oracle 12.1.0.2 单实例安装部署 环境:RHEL 6.5 + Oracle 12.1.0.2 需求:安装部署OEM 13.2需要Oracle 12.1.0.2版本作为 ...
- 38.html----相对于父元素的fixed定位的实现
之前在项目中,遇到了一个场景,需要实现相对于父元素的fixed定位:在父元素内拖动滚动条时,"fixed"定位的元素不能滑动,在外层拖动滚动条时,父元素及父元素内的所有元素跟着一起 ...
- nginx 日志详解及自定义日志配置
nginx的log日志分为access log 和 error log 其中access log 记录了哪些用户,哪些页面以及用户浏览器.ip和其他的访问信息 error log 则是记录服务器错误日 ...