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如果条件为 ...
随机推荐
- 007-js中的Array常用方法
原文:http://www.runoob.com/jsref/jsref-obj-array.html 摘要常用方法 const array=new Array(); // 1 增加元素 // 1.1 ...
- SLAM最近的工作
- 将 context node 中的内容 分配给 desing layer
1 将 context node 中的内容 分配给 desing layer 选中context node 右键>assignment to design layer.
- 微信小程序实现简单的树形图treeview
H5有很多树形图(树状图)的组件,echarts也有.比如像bootstrap的treeview,定制性很强.不过这些都无法方便地为小程序所用,除非整个页面用H5搭建再用webview框进去,有点粗暴 ...
- Linux系统查看日志信息总结
命令: cat tail -f #系统日志文件存放路径: /var/log/message #系统启动后的信息和错误日志 /var/log/secure #与安全相关的日志信息 /var/log/ma ...
- Python的Numpy库简述
numpy 是 python 的科学计算库import numpy as np 1.使用numpy读取txt文件 # dtype = "str":指定数据格式 # delimite ...
- 安装Cuda9.0+cudnn7.3.1+tensorflow-gpu1.13.1
我的安装版本: win10 x64 VS2015 conda python 3.7 显卡 GTX 940mx Cuda 9.0 cudnn v7.3.1 Tensorflow-gpu 1.13.1 1 ...
- Xgboost调参总结
一.参数速查 参数分为三类: 通用参数:宏观函数控制. Booster参数:控制每一步的booster(tree/regression). 学习目标参数:控制训练目标的表现. 二.回归 from xg ...
- react native初识
开发的第一步就是搭建rn的开发环境,你可以去官网去查看教程也可以 点击 http://bbs.reactnative.cn/topic/10 进去查看window的开发环境安装的教程:注意:很关键的一 ...
- 常见web错误码
404表示文件或资源未找到 java WEB常见的错误代码 .1xx-信息提示:这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. -继续. -切换协议. .2xx ...