Python基础之内置方法
字符串的内置方法
按索引取值
msg = 'hello world'
print(f'msg[6]: {msg[6]}')
print(f'msg[-3]: {msg[-3]}')
msg[6]: w
msg[-3]: r
切片(顾头不顾尾,步长)
msg = 'hello nick'
print(f'msg[3:]: {msg[3:]}')
print(f'msg[3:8]: {msg[3:8]}')
print(f'msg[3:8:2]): {msg[3:8:2]}')
print(f'msg[3::2]: {msg[3::2]}')
print(f'切片所有:{msg[:]}')
print(f'反转所有 msg[::-1]: {msg[::-1]}')
print(f'切片-5~-2: {msg[-5:-2:1]}')
print(f'切片-2~-5: {msg[-2:-5:-1]}')
msg[3:]: lo nick msg[3:8]: lo ni msg[3:8:2]): l i msg[3::2]: l ik 切片所有:hello nick 反转所有 msg[::-1]: kcin olleh 切片-5~-2: ni 切片-2~-5: cin
长度len
msg = 'hello nick'
print(len(msg))
10
成员运算
msg = 'my name is micheal, micheal is handsome'
print(f"'nick' in msg: {'nick' in msg}")
print(f"'jason' not in msg: {'jason' not in msg}")
print(f"not 'jason' in msg: {not 'jason' in msg}")
'nick' in msg: False 'jason' not in msg: True not 'jason' in msg: True
移除两边空白strip
name = '&&&n ick'
print(f"name.strip('&'): {name.strip('&')}") #strip()默认为' ', 并且不修改原值,新创建空间
print(f'name: {name}')
#strip()应用场景
pwd = input('password: ') #用户可能会手抖输入空格
if pwd.strip() == '123':
print('密码输入成功')
print(f"'*-& nick'.strip('*-& nick'): {'*-& nick'.strip('*-& ')}")
name.strip('&'): n ick name: &&&n ick password: 123 密码输入成功 '*-& nick'.strip('*-& nick'): nick
切分split
info = "nick:male:19"
info_list1 = info.split(':')
info_list2 = info.split(':', 1)
print(f'info_list1:{info_list1}')
print(f'info_list2:{info_list2}')
info_list1:['nick', 'male', '19'] info_list2:['nick', 'male:19']
循环
msg = 'hello nick'
for i in msg:
print(i,end=' ')
h e l l o n i c k
lower&upper
name = 'Nick Chen'
print(f"name.upper(): {name.upper()}")
print(f"name.lower(): {name.lower()}")
name.upper(): NICK CHEN name.lower(): nick chen
startswith & endswith
name = 'Nick Chen'
print(f"name.startswith('Nick'): {name.startswith('Nick')}")
print(f'name.endswith('chen'): {name.endswith('chen')}')
name.startswith('Nick'): True name.endswith('chen'): False
replace
#str值replace()
name = 'nick shuai'
print(f"name.replace('shuai', 'handsome'): {name.replace('shuai', 'handsome')}")
name.replace('shuai', 'handsome'): nick handsome
join
lis = [1, 3, '13']
print(f"':'.join(lis): {':'.join(lis)}") #报错,数字不可和字符串拼接
#str值join()
lis = ['nick', 'male', '19']
print(f"':'.join(lis): {':'.join(lis)}")
':'.join(lis): nick:male:19
isdigit
#str之isdigit()应用场景
age = input('age: ')
if age.isdigit():
age = int(age)
if age < 18:
print('小姐姐好')
else:
print('阿姨好’)
else:
print(f'你的年龄能是这个{age}?')
age: 12 小姐姐好
列表类型的内置方法
按索引取值(正反向取值同字符串)
切片(同字符串)
长度(同字符串)
成员运算(同字符串)
追加值
# list之追加值
name_list = ['nick', 'jason', 'tank', 'sean']
name_list.append('tank sb')
print(f"name_list: {name_list}")
name_list: ['nick', 'jason', 'tank', 'sean', 'tank sb']
删除
list之删除
name_list = ['nick', 'jason', 'tank', 'sean']
del name_list[2]
print(f"name_list: {name_list}")
name_list: ['nick', 'jason', 'sean']
循环(同字符串)
insert()
#list之insert
name_list = ['nick', 'jason', 'tank', 'sean']
name_list.insert(1, 'handsome')
print(f'name_list: {name_list}')
name_list: ['nick', 'handsome', 'jason', 'tank', 'sean']
pop()
#list之pop(),pop()默认删除最后一个元素
name_list = ['nick', 'jason', 'tank', 'sean']
print(f'name_list.pop(1): {name_list.pop(1)}')
name_list.pop(1): jason
remove()
# list之remove()
name_list = {'nick', 'jason', 'tank', 'sean'}
print(f'name_list.remove("nick"): {name_list.remove("nick")}')
name_list.remove("nick"): None
count()
#list之count()
name_liat = ['nick', 'jason', 'tank', 'sean']
print(f"name_list.count('nick'): {name_list.count('nick')}")
name_list.count('nick'): 1
index()
#list之index()
name_list = ['nick', 'jason', 'tank', 'sean']
print(f"name_list.index('nick'): {name_list.index('nick')}")
name_list.index('nick'): 0
extend()
#list之extend
name_list = ['nick', 'jason', 'tank', 'sean']
name_list2 = ['nick handsome']
name_list.extend(name_list2)
print(f"name_list: {name_list}")
name_list: ['nick', 'jason', 'tank', 'sean', 'nick handsome']
reverse()
#list之reverse()
name_list = ['nick', 'jason', 'tank', 'sean']
name_list.reverse()
print(f"name_list: {name_list}")
name_list: ['sean', 'tank', 'jason', 'nick']
sort()
#list之sort(), 使用sort列表的元素必须是同类型的
name_list = ['nick', 'jason', 'tank', 'sean']
name_list.sort()
print(f"name_list: {name_list}")
name_list.sort(reverse = True)
print(f"name_list_reverse: {name_list}")
name_list: ['jason', 'nick', 'sean', 'tank'] name_list_reverse: ['tank', 'sean', 'nick', 'jason']
字典类型内置方法
按key取值:可存可取
#dict之按key取值
dic = {'a': 1, 'b': 2}
print(f"first dic['a']: {dic['a']}")
dic['a'] = 3 #可以对原值进行修改
print(f"second dic['a']: {dic['a']}")
first dic['a']: 1 second dic['a']: 3
长度len(与字符串类似)
成员运算(同字符串)
删除
# dic之删除del
dic = {'a': 1, 'b': 2}
del dic['a']
print(f"dic.get('a'): {dic.get('a')}")
# dic之删除pop
dic = {'a': 1, 'b': 2}
dic.pop('a') #指定元素删除
print(f"dic.pop('a'):{dic.pop('a')}")
print(f"dic.pop('b'):{dic.pop('b')}")
dic.get('a'): None
dic.get('a'): None
dic.pop('b'): 2
items()
dic = {'a': 1, 'b': 2}
print(f"dic.items(): {dic.items()}")
dic = {'a': 1, 'b': 2}print(f"dic.items(): {dic.items()}")
循环
# dic之循环
# dic是无序的,但是python3采用了底层优化算法,所以看起来是有序的,但是python2中的字典是无序
dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
for k, v in dic.items():# items可以换成keys()、values()
print(k, v,end=' ')
dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}for k, v in dic.items():# items可以换成keys()、values() print(k, v,end=' ')
get()
# dic之get()
dic = {'a': 1, 'b': 2}
print(f"dic.get('a'): {dic.get('a')}")
print(f"dic.get('c'): {dic.get('c')}")
dic.get('a'): 1
dic.get('c'): None
update()
# dic之update()
dic1 = {'a': 1, 'b': 2}
dic2 = {'c': 3}
dic1.update(dic2)
print(f"dic1: {dic1}")
dic1: {'a': 1, 'b': 2, 'c': 3}
setdefault()
#dic之setdefault() 有指定key不会改变值,无指定key则改变值
dic = {'a': 1, 'b': 2}
print(f"dic.setdefault('a'): {dic.setdefault('a',3)}")
print(f"dic: {dic}")
print(f"dic.setdefault('c'): {dic.serdefault('c',3)}")
print(f"dic: {dic}")
dic.setdefault('a'): 1
dic: {'a': 1, 'b': 2}
dic.setdefault('c'): 3
dic: {'a': 1, 'b': 2, 'c': 3}
小练习
统计s = ‘hello tank tank say hello sb sb’中每个单词的个数
s = 'hello tank tank say hello sb sb'
s_split = s.split()
dic = dict()
for i in s:
if i in dic:
dic[i] += 1
else:
dic[i] = 1
print(dic)
{'hello': 2, 'tank': 2, 'say': 1, 'sb': 2}
Python基础之内置方法的更多相关文章
- python进阶之内置方法
python进阶之内置方法 字符串类型的内置方法 常用操作与方法: 按索引取值 str[index] 切片 ste[start:stop:step] 长度 len(str) 成员运算in和not in ...
- python数据类型之内置方法
python有六大数据类型,分别为整型.字符串.列表.字典.元祖和集合,这些基本数据类型都内置了很多方法,接下来一一探寻. python中整型有两种:int和float 1 int 使用dir函数查看 ...
- Python基础之内置函数(二)
先上一张图,python中内置函数: python官方解释在这:点我点我 继续聊内置函数: callable(object):检查对象是否可被调用,或是否可执行,结果为bool值 def f1(): ...
- python基础之内置装饰器
装饰器 简介 功能与格式 内置装饰器 @classmethod @propertry @staticmethod 其它 ---------------------------------------- ...
- Python基础之内置函数和递归
一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 iterable 的 ...
- python基础之内置异常对象
前言 什么叫异常?简单来说就是程序运行发生了预计结果之外的情况从而导致程序无法正常运行.而python解释器将一些常见的异常情况在它发生时打包成一个异常对象,我们可以通过捕捉这些异常对象从而进行处理, ...
- python基础之内置函数补充、匿名函数、递归函数
内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: 1 divmod(a, b) #a.b为数字,a为除数 ...
- python基础之内置函数和匿名函数
内置函数 学习函数以后多了很多概念,例如函数的命名空间,函数的作用域,函数的调用等等,函数的作用就是为了实现某些功能而方便以后可以调用,内置函数就是这样的一些公共的函数,被称为内置函数. 我们就一 ...
- python基础之内置函数
该博客内容参考http://www.cnblogs.com/wupeiqi/articles/4943406.html 内置函数 一 详细见python文档,猛击这里 文件操作 操作文件时,一般需要经 ...
随机推荐
- requests访问https站点证书告警问题
背景 想使用api的方式去访问公司内部azkaban平台,https站点,azkaban的官方api文档使用的curl语句,如下: curl -k -X POST --data "actio ...
- 第一次实验报告:使用Packet Tracer分析HTTP数据包
目录 1 实验目的 2 实验内容 3. 实验报告 第一次实验报告:使用Packet Tracer分析HTTP数据包 1 实验目的 熟练使用Packet Tracer工具.分析抓到的HTTP数据包,深入 ...
- 大话设计模式Python实现-装饰模式
装饰模式(Decorator Pattern):动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活. 下面是一个给人穿衣服的过程,使用装饰模式: #!/usr/bin/en ...
- 【记录】【idea】【mysql】Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually.解决问题
idea连接mysql报错Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property ...
- C# 分解文件路径目录
利用正则表达式分解文件目录 [^\\].*?[\\$]|[^\\].*?\.\w+|\w+ 测试字符串:C:\Users\wppcn\Desktop\中文长字符第一次测试\新建文件夹1\新建文件夹2\ ...
- 前端学习:JS(面向对象)代码笔记
前端学习:JS(面向对象)代码笔记 前端学习:JS面向对象知识学习(图解) 创建类和对象 创建对象方式1调用Object函数 <body> </body> <script ...
- golang ---timeb
golang 提供了以下两种基础类型 - 时间点(Time) - 时间段(Duration) 除此之外 golang 也提供了以下类型,做一些特定的业务 - 时区(Location) - Ticker ...
- mac 远程桌面连接
1.安装 百度搜索下载远程桌面连接软件 microsoft remote desktop for mac,或者你安装了mac版的office,会默认有安装这个软件的. 提示“证书或相关链无效”的解决办 ...
- Java基础笔记之String相关知识
(二)String Sring 被声明为 final ,因此不可被继承. String的不可变性: 看String的定义(java9版本): public final class String imp ...
- 两道JVM面试题,竟让我回忆起了中学时代!
作者:肥朝 原文链接:https://mp.weixin.qq.com/s/4wJ6ANal0blLOseasfIuVw 中学授课模式 考虑到可能有部分粉丝对JVM参数不清楚,所以我们参照中学的授课模 ...