python中字符串和列表只是汇总
字符串知识汇总
字符串是描述变量的重要信息,其中的应用也是很多,很重要的一点就是StringBuilder。今天我们会为大家介绍一下常用的StringBuilder
1 strip lstrip rstrip
作用:去除多余空格或其他
print('**sss****'.lstrip('*')) print('**sss****'.rstrip('*')) a = '***---*****' print(a.strip('-_')) print(a.rstrip("*"))
输出结果
sss**** **sss ***---***** ***---
2 lower,upper
作用:所有字母大写,和小写
print('EGOn'.lower()) print('egon'.upper())
输出结果
egon EGON
3 startswith endswith
print('alex is sb'.startswith('alex')) print('alex is sb'.endswith('sb'))
输出结果
True True
4 format 用法
作用:
1 替代%s占位符,多出来的对应不会报错
2 以索引方式,可实现对此重复
3 以映射方式实现对应关系
s1='my name is %s my age is %s' %('egon',18) # 如果加入一个19 ,择多出来的19 会让程序报错 s2='my name is {} my age is {}'.format('egon',18,19) #多出来的19没有映射关系,但是程序不会报错 print(s1) print(s2)
输出结果
my name is egon my age is 18 my name is egon my age is 18
s2 = 'my name is {0} my age is {1} {0} {1}{2}'.format('egon',18,19) print(s2)
输出结果
my name is egon my age is 18 egon 1819
s2 = 'my name is {name} my age is {age}'.format(age = 18,name = 'egon') print(s2)
输出结果
my name is egon my age is 18
5 split rsplit
作用:按照指定要求切分字符串
cmd='get|C:\a.txt|3333' print(cmd.split('|',1)) # 数字1表示切割次数 print(cmd.rsplit('|',1)) # rsplit先从右边切割
输出结果
['get', 'C:\x07.txt|3333'] [']
6 join
# cmd='egon:123:admin:rwx' # l=cmd.split(':') # print(l) # res='----'.join(l) # print(res) # res=':'.join(l) # print(res) # res=' '.join(l) # print(res,type(res)) # print(l) # print('%s:%s-%s-%s' %(l[0],l[1],l[2],l[3]))
输出结果
egon:123:admin:rwx egon 123 admin rwx <class 'str'> [', 'admin', 'rwx'] egon:123-admin-rwx
:'.join([1,2,3]) # join方法传入的列表必须只包含str类型的元素
此代码如果运行,程序会报错
7 replace
作用 替换
msg='wupeiqi say my name is wupeiqi' print(msg.replace('wupeiqi','SB')) print(msg.replace('wupeiqi','SB',1))
输出结果
SB say my name is SB SB say my name is wupeiqi
8 isdigit
作用:判断数据类型是否为数字
age=10 inp=input('>>: ').strip() if inp.isdigit(): inp=int(inp) if inp > age: print('too big') else: print('输入数据非法')
比变了因为用户输入不合法使程序报错
列表知识汇总
1 字符串可以转化为列表
l1=list('hello') print(l1)
输出结果
['h', 'e', 'l', 'l', 'o']
2列表常用操作+内置的方法
l=['a','b','c'] print(id(l)) print(l[-1]) l[0]='A' print(id(l)) print(l)
输出结果
31329992 c 31329992 ['A', 'b', 'c']
l[3] = "d" #报错
3 切片,顾头不顾尾,步长
stus=['alex','egon','wxx','yxx','lxx'] print(stus[1:5:2])
输出结果
['egon', 'yxx']
#3、长度
# stus=['alex','egon','wxx','yxx','lxx']
# print(len(stus))
#4、成员运算in和not in
# stus=['alex','egon','wxx','yxx','lxx']
# print('alex' not in stus)
#5、追加
# stus=['alex','egon','wxx','yxx','lxx']
# A = stus.append('wupei')
# stus.append('peiqi')
# print(stus)
# print(A)
# 插入
# stus=['alex','egon','wxx','yxx','lxx']
# stus.insert(1,'艾利克斯')
# print(stus)
#6、删除
# stus=['alex','egon','wxx','yxx','lxx']
# del stus[1]
# print(stus)
# stus.remove('alex')
# print(stus)
# stus.pop(1)
# stus.pop() # 默认删除末尾
# print(stus)
# res1=stus.remove('alex') # 单纯的删除
# print(res1)
# res2=stus.pop(0) # 取走一个值
# print(res2)
#7、循环
# stus=['alex','egon','wxx','yxx','lxx']
#依赖索引
# i=0
# while i < len(stus):
# print(stus[i])
# i+=1
# for i in range(len(stus)): # 可以加上元素顺序
# print(i,stus[i])
# 不依赖索引
# for item in stus:
# print(item)
#补充for循环
# for i in range(0,5,2): # 0,5 表示区间,2 表示步长
# print(i)
# for i in range(10):#默认从零起始
# print(i)
#
# for i in range(10,-2,-1): # 反向切片
# print(i)
# 需要掌握的操作
# stus=['alex','egon','alex','wxx','yxx','lxx']
# print(len(stus)) # stus.__len__()
#
# print(stus.count('alex'))
# stus.extend(['a','b','c']) # 把新增列表中的元素逐一添加到原列表中
# print(stus)
# stus.append(['a','b','c']) # 把新增列表作为一个元素添加到原列表中
# print(stus)
# print(stus.index('alex',0,5)) # alex这个元素在区间(0,5)范围内第一个出现的索引值
#
# stus.reverse()
# print(stus)
# l=[1,10,3,12]
# a = l.sort(reverse= True)
# print(l)
# print(a)
# 大前提:只能同类型直接比较大小,对于有索引值直接的比较是按照位置一一对应进行比较的
# s1='hello'
# s2='hf'
# print(s1 > s2)
# l1=[3,'a','b','c']
# l2=['xxx','d']
# print(l1 > l2) # 报错
# print('Z' > 'a')
# #A-Za-z
# print('a' > 'B')
# 了解
# stus.clear()
# print(stus)
# l=stus.copy()
# print(l)
#练习:
#队列:先进先出
l1=[]
# 入队
l1.append('first')
l1.append('second')
l1.append('third')
print(l1)
# 出队
print(l1.pop(0)) #['second', 'third']
print(l1.pop(0)) #['third']
print(l1.pop(0)) #[]
#堆栈:先进后出
# l1=[]
# #入栈
# l1.append('first')
# l1.append('second')
# l1.append('third')
# #出栈
# print(l1.pop())
# print(l1.pop())
# print(l1.pop())
#总结列表类型:
'''
1 存多个值
2 有序
3 可变
4 列表后面加.append,这一类的,有的有返回值,有的没有返回值
'''
列表是可变类型,同一个内存地址,可以对列表修改,id不变,值变了就是可变类型,不可哈希
# 字符串不可变类型,字符串可以想列表一样提取出来,但是不可以更改编制,只要一改,
# 内存地址就变了,相应的id也就变了,id变了就是不可变类型,可哈希
python中字符串和列表只是汇总的更多相关文章
- Python中字符串转换列表
前言:在使用Python完成工作中一些任务的时候,常常要对数据类型进行转换,比如字符串转列表,列表转字符串,字符串转元组等等,下面分享一下常用的字符串转列表 字符串转列表 第一种字符串转列表: t_s ...
- python中字符串与列表之间的相互转换
1.字符串>列表:split() a = 'my first python' b = a.split(" ") print(b)输出: 2.列表>字符串:join() ...
- python中字符串与列表的相互转换
列表转字符串 list1 = ['abc' , 'def' , 'ghi'] str1 = ','.join(list1) str1 = '##'.join(list1) 字符串转列表 str1 = ...
- python中字符串、列表访问
一.列表 列表由一系列按特定顺序排列的多个元素或空元素组成,包含字母表中所有字母.数字0~9或所有家庭成员姓名的列表:列表中各元素间可以没有任何关系:实际使用过程中,通常给列表指定一个表示复数的名称, ...
- Python中字符串、列表、元组、集合、字典中的一些知识,有些不太常见
————————笔记——————————# 字符串1. 字符串是不可变的.2. 字符串切片输出:`[start:end:step]`.使用`a[::-1]`倒序输出字符串.3. `str.split( ...
- 干货!Python中字符串、列表、元祖、字典,集合之间的转换
一.字符串的转化 1.字符串转换成列表 字符串转换成list 的时候,str可以作为迭代对象,直接放入:也可以使用split对字符串进行切割.然后返回list s = '1a1b1c' print(l ...
- Python中字符串、列表、元组、字典、集合常用方法总结
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
随机推荐
- 关于UIButton嵌入到UIView点击无反应问题的解决方法和delegate的简单用法示例(转载)
做项目封装UIView的时候碰到的问题,没想到有个哥们儿还写成博客,特此收藏! 问题是这样的,几个界面用到同一个自定义返回按钮,于是就想着把这个按钮单独封装起来,添加一个UIView类,在里面自定义U ...
- POJ - 3279 枚举 [kuangbin带你飞]专题一
这题很经典啊,以前也遇到过类似的题--计蒜客 硬币翻转. 不过这题不仅要求翻转次数最少,且翻转方案的字典序也要最小. 解法:二进制枚举第一行的翻转方案,然后处理第二行,如果第二行的k列的上一列是黑色, ...
- mybatis与spring的整合(使用sqlSession进行crud)
上次介绍了用接口的方法极大的节省了dao层,只需通过 配置文件和接口就可以实现,这次介绍的是通过splsession来实现dao,这种方法比较灵活: 先不说,上配置文件: 1.web.xml < ...
- javascript类型判断方法
判断javascript中的类型,共有四种常用的方法 var a=6; var b="str"; var c=true; var arr=[]; typeof 用于基本类型的判断 ...
- mysql打不开表问题解决方案
做开发时候某一表怎么也打不开,数据也不多,网上查了按下面这篇文章完美解决,但是要记得用root登录mysql: 记一次MySQL中Waiting for table metadata lock的解决方 ...
- ios学习笔记(一)Windows7上使用VMWare搭建iPhone开发环境
我们都知道开发iPhone等ios平台的移动应用时需要使用Mac本,但是Mac本都比较昂贵,所以我们可以采用Windows7上利用VMWare安装Mac操作系统的方法来模拟ios开发环境,达到降低成本 ...
- Unhandled event loop exception GC overhead limit exceeded
1.错误描述 java.lang.OutOfMemoryError: GC overhead limit exceeded at java.util.zip.ZipFile.<init>( ...
- css属性详解
一.字体属性 字体 font-family可以把多个字体名称作为一个“回退”系统来保存.如果浏览器不支持第一个字体,则会尝试下一个.浏览器会使用它可识别的第一个值. body { font-famil ...
- jQuery.extend 函数使用详解
JQuery的extend扩展方法: Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们一起去了解了解. 一.Jquery的扩展方 ...
- RAM
1. 前记 我们知道,不同的计算机结构对RAM 的使用方式是有区别的,典型的计算机结构有两个,冯诺依曼结构和哈佛结构,而两大阵营的领军人物就是传说中的Intel X86系列的8086和51单片 ...