python的字符串、列表、字典和函数
一、字符串
- 在python中字符串无需通过像php中的explode或者javascript中的split进行分解即可完成切片,可以直接通过下标获取字符串中的每一个字符,下标从0开始,如果从厚望签署,下标从-1开始
str = 'abcde'
print(str[0]) #结果为:a
print(str[2]) #结果为:c
可以通过len()函数获取字符串的长度
切片:str[起始位置:结束位置:步长]
如果想要取字符串中的几个字符(切片),可以通过在方括号内添加冒号实线,冒号前为开始的小标,冒号后为结束的下标,截取的是冒号前开始到冒号后之间的字符,去尾不掐头
str = 'abcde'
print(str[1:3]) #结果为:bc
print(str[2:3]) #结果为:c
print(str[1:0]) #结果为:bcde 冒号后为零,视为取到最后一个
- 加上第二个冒号后,第二个冒号后的数字相当于步长,即下标加几
str = 'abcdeABCDE'
print(str[1:8:2]) #结果为:bdAC
print(str[-1:0:-1]) #结果为:EDCBAedcb
print(str[-1::-1]) #结果为:EDCBAedcba
print(str[::-1]) #结果为:EDCBAedcba
print(str[::1]) #结果为:abcedABCED
- 字符串常见操作:
find():从左向右查找字符串在目标字符串中第一次出现的位置,找不到返回-1。
str = 'hello world!'
print(str.find('o')) #结果为:4
rfind():与find相反,从右向左找。
index():作用与find相同的,不同的是,如果找不到index会抛出一个异常。
rindex():同理。
count():返回查找字符串在目标字符串中出现的次数,不存在返回0。
replace('目标字符串', '要替换的字符串', 替换几次)
split():同javascript里的split函数,如果括号内什么都不写,默认以空格为目标切割(很好用)
join():作用同javascript里的join函数,但形式不同。
a = ['aaa', 'bbb', 'ccc']
b = '#'
print(b.join(a)) #结果为:aaa#bbb#ccc
capitalize():把字符串第一个字符大写
title():把字符串的每个单词的首字母大写
startswith():检查字符串是否以目标字符串开头
endswith():与startswith相反
lower():把字符串中所有大写字符小写
upper():与lower相反
ljust()、rjust()、center():在括号内填写的数字长度内,靠左、靠右、居中。
lstrip()、rstrip()、strip():同javascript里的trim
partition():用字符串把目标字符串以该字符串为中心,分为左中右三部分,返回一个元祖。
str = 'hello world'
print(str.partition('o')) #结果为:('hell', 'o', ' world')
rpartition():作用同partition,从右向左取第一个。
splitliness():按换行符进行分割。
isalpha():判断目标字符串是不是字母。
isdigit():判断目标是不是数字。
isalnum():判断目标是不是既有字母又有数字。
isspace():判断目标是不是空格
二、列表
- 形式:
names = ['张三', '李四', '王五']
列表的增加:
- append("要添加的内容")
- insert("位置", "要添加的内容")
合并列表:
直接用+号进行合并
用extend()函数
names1 = ['张三', '李四', "王五"]
names2 = ['赵六', '吴七']
names3 = names1 + names2
print(names3) #结果为:['张三', '李四', '王五', '赵六', '吴七']
names1.extend(names2)
print(names1) #结果为:['张三', '李四', '王五', '赵六', '吴七']
列表的删除:
- pop():弹出列表中的最后一个
- remove("内容"):删除列表中第一个目标内容
- del 列表名[下标]
列表的查找:
- "要查找的内容" in 列表名
- "要查找的内容" not in 列表名
列表的遍历:
for temp in 列表名:
print(temp)
else:
print('end') # for循环加上else,即为在for循环执行完成后,执行else部分
- 列表的排序:
- list.sort():将列表的值按升序排序。
- list.sort(reverse=True):将列表的值按降序排序。
- list.reverse():将列表逆序。
三、字典
- 形式:dic = {键:值, 键:值…},相当于PHP中的关联式数组,表现形式上与json对象相当
- 字典的删除 del 字典名['键名']
- 用get获取字典里的数据,当对应内容不存在时,不会报错:字典名.get('键名')
- 字典的函数:
- len(dic名):获取字典的键值对个数。
- dic.keys():返回字典中所有的键。
- dic.values():返回字典中所有的值。
- dic.items():将字典转化为元祖。
- 字典的排序:
- dic.sort(key=lambda x:x['键名']):升序排列
四、元祖
- (11,22,33)功能与列表相同,不同之处在于元祖在定义后无法修改。
五、函数
- 不定长函数(元祖):
def example(a, b, *args):
print(a)
print(b)
print(args)
example(1, 2, 3, 4, 5, 6, 7, 8) #结果为:1 2 (3, 4, 5, 6, 7)
- 不定长参数(字典):
def test(a, b, c = 33, *args, **kwargs):
print(a)
print(b)
print(c)
print(args)
print(kwargs)
test(11, 22, 33, task = 99, done = 89) #结果为:11 22 33 () {'task': 99, 'done': 89}
- 函数的参数
带默认值的参数被称为关键字参数,没有默认值的参数被称为位置参数,在定义函数的时候,位置参数不能放在关键字参数之后
python的字符串、列表、字典和函数的更多相关文章
- python之字符串,列表,字典,元组,集合内置方法总结
目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...
- python字符串/列表/字典互相转换
python字符串/列表/字典互相转换 目录 字符串与列表 字符串与字典 列表与字典 字符串与列表 字符串转列表 1.整体转换 str1 = 'hello world' print(str1.spli ...
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- python字符串,列表,字典的常用方法
本篇内容 字符串的常用方法 列表的常用方法 字典的常用方法 字符串的常用方法 center 字符居中显示,指定字符串长度,填充指定的填充字符 string = "40kuai" p ...
- python之字符串,列表,集合,字典方法
字典内置函数&方法 函数: 1.len(dict1):打印字典的键的个数 方法:dict1.( ) 2.clear():清空字典 3.copy():复制字典 4.fromkeys():使用指定 ...
- Python基础2 列表 字典 集合
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- 「Python」字符串操作内置函数
目录: capitalize casefold center count encode decode endswith expandtabs find format format_map index ...
- python学习-字符串 列表 元祖
目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...
- Python实例4- 列表到字典的函数,针对好玩游戏物品清单
假设征服一条龙的战利品表示为这样的字符串列表: dragonLoot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby'] 写一个名为 ...
- 字符串转换为字典的函数eval(字符串)
首先把多行的字符串,变成一个字符串,用'''和'''扩起来: 然后把这个字符串,赋值给b 这个时候,b根本调不出来,也用不起来: 用eval(b),来格式化字符串变成字典: 然后b就变成了一个字典:
随机推荐
- 查看chrome插件源码
简介 想查看chrome插件的源码,就需要找到chrome插件安装的位置,接着再文件夹下查找此插件的id. mac cd ~/Library/Application Support/Google/Ch ...
- LeetCode-矩形重叠
题目描述: 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标. 如果相交的面积为正,则称两矩形重叠.需要明确的是,只在 ...
- Java-方法(新手)
//创建的一个类.public class zy1ri0319 { //公共静态的主方法. public static void main(String[] args){ //调用方法. zy1(); ...
- oracle中plsql练习题----查询姓为“SMITH”的员工信息,并输出其员工号、姓名、工资、部门号。 – –如果该员工不存在,则插入一条新记录,员工号为2012,员工姓名为“Smith”,工资为7500元,入职日期为“2002年3月5日”,部门号为50。 – –如果存在多个名“Smith”的员工,则输出所有名为“Smith”的员工号、姓名、工资、入职日期、部门号L。
一.思路:首先判断这个查询的是emp表,需要接收值,声明一个rowtype类型接收数据即可,第二是,存在exception,需要处理,exception中有两种异常,分别处理即可,分别输出即可. 二. ...
- mysql & Tomcat使用问题记录
mysql使用问题记录 1.mysql如何修改root密码 a.进入mysql安装目录b.登录 mysql -u root -pc.修改密码 mysql> SET PASSWORD FOR ro ...
- Spring框架——继承 - 依赖 - 命名空间
Spring 继承 子 bean 可以继承⽗ bean 的属性值. <bean id="user" class="com.sunjian.entity.User&q ...
- drf-jwt的过滤,筛选,排序,分页组件
目录 自定义drf-jwt配置 案例:实现多方式登陆签发token urls.py models.py serializers.py views.py 案例:自定义认证反爬规则的认证类 urls.py ...
- hdu3665Floyd解法
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/3665/ Floyd是经典的dp算法,将迭代过程分成n个阶段,经过n个阶段的迭代所有点对之间的最短路径都可以求出, ...
- java 为什么重写equals一定要重写hashcode?
前言 最近复习,又看到了这个问题,在此记录和整理,通过例子来说明这种情况的原因,使大家可以清晰明白这个问题. 初步探索 首先我们要了解equals方法是什么,hashcode方法是什么. equals ...
- 图-连通分量-DFS-749. 隔离病毒
2020-03-17 21:56:20 问题描述: 病毒扩散得很快,现在你的任务是尽可能地通过安装防火墙来隔离病毒. 假设世界由二维矩阵组成,0 表示该区域未感染病毒,而 1 表示该区域已感染病毒.可 ...