Python 数据类型常用的内置方法(二)

1、字符串类型常用内置方法

经常使用的内置方法,必会!!!


接上篇Python 数据类型常用的内置方法(一)

1、upper、lower、isupper、islower

  • upper():转大写
  • lower():转小写
  • isupper():判断是否为纯大写
  • islower():判断是否为纯小写

实例如下:

#1、upper()转大写
#lower()转小写
str = 'Hi,I am HammerZe'
print(str.upper())
print(str.lower()) #结果
HI,I AM HAMMERZE
hi,i am hammerze

#2、isupper()判断是否为全大写
#islower()判断是否为全小写
str1 = 'python'
print(str1.islower(),str.isupper()) #结果
True False

生活实际案例:现在好多图片验证码,不用区分大小写,底层原理就是大小写转换的方法。


"""
用户登录验证码验证是否正确
"""
code = 'W8Q5'
#输入验证码,strip去空格
user_input_code = input('please input right code:').strip()
#不论用户输入什么,upper()方法都可以转换成统一大写
if user_input_code.upper() == code.upper():
print('Login success!')
else:
print('Code is incorrect!')
#结果
please input right code:w8q5
Login success!


2、startswith、endswith

  • startswith():判断字符串是否以指定的字符开头
  • endswith():判断字符串是否以指定的字符结尾

实例如下:

"""
判断是否以指定字符开头和结尾
"""
str = 'I love python'
print(str.startswith('I'))
print(str.endswith('n'))
print(str.endswith(('python'))) #结果
True
True
True

3、format

实例如下:

"""
format格式化输出
"""
#不设置参数,按默认顺序输出
Info = 'my name is {},Age is {}'
print(Info.format('HammerZe',18)) #设置参数,按指定顺序输出
Info = 'my name is {0},{0} age is {1}'
print(Info.format('HammerZe',18)) #设置参数
Info_url = '我的博客地址为:{url},求关注~'
print(Info_url.format(url = 'https://www.cnblogs.com/48xz/'))

搭配列表、字典使用,实例如下:

# 搭配列表
lst_mat = ['HammerZe', 'https://www.cnblogs.com/48xz/']
print('我的博客名{0[0]},博客地址为{0[1]}'.format(lst_mat)) # 搭配字典
dic_mat = {'name': 'Hammer', 'url': 'https://www.cnblogs.com/48xz/'}
print('博客名:{name},博客地址:{url}'.format(**dic_mat))

4、join

字符串拼接可以用‘+’,操作起来麻烦,需要写的代码多,这里推荐使用join()方法。

  • 格式:
  • 指定拼接符.join(需要拼接的字符串)

实例如下:

#join拼接字符串
join_str = ['hello','world']
print('$'.join(join_str))

注意!!!!!!!!!!!!!!!!!

拼接的必须是字符串,不同数据类型之间无法直接操作

#可以拼接
join_str = ['age','18']
print('$'.join(join_str)) #结果
age$18 #不可以拼接
join_str = ['age',18]
print('$'.join(join_str)) #结果
TypeError: sequence item 1: expected str instance, int found

5、replace

  • 格式

  • replace(oldstr,newstr,n) #n为需要替换的个数,默认全部替换

实例如下:

rep_str = 'I am HammerZe'
# 把a全部替换成b
print(rep_str.replace('a', 'b'))
# 替换一个a
print(rep_str.replace('a', 'b', 1))

6、isdigit

  • isdigit():判断字符串是否为纯数字

实例如下:

is_num = 'HammerZe48'
is_num1 = '123'
print(is_num.isdigit(),is_num1.isdigit()) #结果
False True

7、title、capitalize、swapcase

  • title():所有单词首字母大写
  • capitalize():开头单词首字母大写
  • swapcase():大小写互换

实例如下:

transform_word = 'HammerZe'
print(transform_word.title(),transform_word.capitalize(),transform_word.swapcase()) # 结果
Hammerze Hammerze hAMMERzE

8、find、index

  • find():查看字符对应索引位置,从左往右,找到一个就结束,找不到返回-1
  • index():查看字符对应索引位置,从左往右,找到一个就结束,找不到报错

实例如下:

find_str = "I am HammerZe"
#包含'Z'
print(find_str.find('Z'))
#不包含'w'
print(find_str.find('w'))
#包含'e'
print(find_str.index('e'))
#不包含'n'
print(find_str.index('n')) #结果
11
-1
9
ValueError: substring not found

9、center、ljust、rjust

  • center():居中
  • ljust():左对齐
  • rjust():右对齐

格式:方法名(指定长度,指定填充字符)

实例如下:

center_str = 'HammerZe'
#居中
print(center_str.center(16,'$'))
#左对齐
print(center_str.ljust(16,'$'))
#右对齐
print(center_str.rjust(16,'$'))

10、isalnum、isalpha

  • isalnum():判断字符串中既可以包含数字也可以包含字母
  • isalpha():判断字符串中只包含字母

实例如下:

is_num = 'HammerZe123'
print(is_num.isalnum(),is_num.isalpha()) #结果
True False

2、列表的内置方法

1、类型转换

list关键字可以支持for循环可迭代的数据类型转换成列表,就是可变类型,不可变类型(元组除外)不能转换

[可变类型不可变类型](Python--基本数据类型(可变/不可变类型) - HammerZe - 博客园 (cnblogs.com))

实例如下:

# 不可转换,报错
# print(list(666))
# print(list(123.123))
# print(list(True)) # 可以转换,结果相当于for循环遍历的结果
print(list('hello'))
print(list({'name': 'HammerZe', 'age': 18}))
print(list((1, 2, 3, 4, 5)))
print(list({1, 2, 3, 4, 5})) #结果
['h', 'e', 'l', 'l', 'o']
['name', 'age']
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]

2、append、insert、extend

  • append():将括号内的元素当成一个整体追加到列表尾部
  • insert():插入元素,可以指定位置
  • extend():一个一个追加在字符串尾部,相当于for+append

实例如下:

#append():
add_list = ['HammerZe',666,'python']
add_list.append('java')
print(add_list)
add_list.append(['123','C++'])
print(add_list) #结果
['HammerZe', 666, 'python', 'java']
['HammerZe', 666, 'python', 'java', ['123', 'C++']] #insert():
#在索引为0的的位置插入字符串
add_list.insert(0,'my name is:')
print(add_list) #结果
['my name is:', 'HammerZe', 666, 'python', 'java', ['123', 'C++']] #extend():
add_list = ['HammerZe',666,'python']
add_list.extend(['111',222,456,'123','python'])
print(add_list) #结果
['HammerZe', 666, 'python', '111', 222, 456, '123', 'python']

3、del、remove、pop

  • del():根据索引移除需要移除的元素
  • remove():括号内指定需要移除的元素值
  • pop():括号内指定需要弹出的元素索引值,括号内如果不写参数则默认弹出列表尾部元素

实例如下:

num = [1, 2, 3, 4, 5, 'python','php']
del num[0] #移除索引为0的元素
print(num)
num.remove('php') #移除指定的元素值
print(num)
num.pop(1) #按索引值去除值
print(num)
num.pop()
print(num) #结果
[2, 3, 4, 5, 'python', 'php']
[2, 3, 4, 5, 'python']
[2, 4, 5, 'python']
[2, 4, 5]

附送字符串的内置方法思维图:


学习笔记持续更新中,求关注····

Python 数据类型常用的内置方法(二)的更多相关文章

  1. Python 数据类型常用的内置方法(三)

    目录 Python 数据类型常用的内置方法(三) 1.列表内置方法 1.sort():升序 2.reverse():颠倒顺序 3.列表比较运算 2.字典内置方法 1.对Key的操作 2.len( )- ...

  2. Python 数据类型常用的内置方法(一)

    目录 Python 数据类型常用的内置方法 1.整型 int 2.浮点型 float 字符串转浮点型: 3.字符串 str 多种类型转字符型: 索引 切片 len( )方法:统计字符串长度/个数 移除 ...

  3. 列表、enumerate()函数,以及查看数据类型所有的内置方法

    随便看看 """ forList(): 测试list和enumerate()函数 examineFun(): 查看数据类型所有的内置方法 ""&quo ...

  4. python面向对象 : 反射和内置方法

    一. 反射 1. isinstance()和issubclass() isinstance( 对象名, 类名) : 判断对象所属关系,包括父类  (注:type(对象名) is 类名 : 判断对象所属 ...

  5. 《Python》反射、内置方法(__str__,__repr__)

    一.反射 通过字符串的形式操作对象相关的属性.(使用字符串数据类型的变量名来获取这个变量的值) Python中的一切事物都是对象(都可以使用反射) 反射类中的变量 反射对象中的变量 反射模板中的变量 ...

  6. python今日分享(内置方法)

    目录 一.习题详解 二.数据类型的内置方法理论 三.整型相关操作 四.浮点型相关操作 五.字符串相关操作 六.列表相关操作 今日详解 一.习题详解 1.计算1-100所有数据之和 all_num = ...

  7. python基础之反射内置方法元类

    补充内置函数 isinstance(obj,Foo)   # 判断obj是不是foo的实例 issubclass()      # 判断一个类是不是另一个类的子类 反射 什么是反射? 通过字符串来操作 ...

  8. python函数知识六 内置函数二、匿名函数与内置函数三(重要)

    19.内置函数二 abs():绝对值 lst = [1,2,-3,1,2,-5] print([abs(i) for i in lst]) enumerate("可迭代对象",&q ...

  9. python 面向对象反射以及内置方法

    一.反射 什么是反射:可以用字符串的方式去访问对象的属性,调用对象的方法(但是不能去访问方法),python中一切皆对象,都可以使用放射. 反射的四种方法: hasattr:hasattr(objec ...

随机推荐

  1. 深入浅出WPF-10.Resource(资源)

    资源 对象级资源:每个WPF的界面元素都有一个名为Resources的属性,这个属性继承自FrameworkElement类,其类型为ResourceDictionary,采用键值对的形式存储资源,当 ...

  2. Angular 的性能优化

    目录 序言 变更检查机制 性能优化原理 性能优化方案 小结 参考 序言 本文将谈一谈 Angular 的性能优化,并且主要介绍与运行时相关的优化.在谈如何优化之前,首先我们需要明确什么样的页面是存在性 ...

  3. VUE -input输入框字母转大写

    示例: 输入自动转--->大写 <input type="text" placeholder="请输入证件号码" maxlength="1 ...

  4. 10.1 HTTP

    1.跨网络的主机间通讯 套接字Socket是进程间通信IPC的一种实现,允许位于不同主机(或同一主机)上不同进程之间通信和数据交换 在建立通信连接的每一端,进程间的传输要有两个标志:IP地址和端口号, ...

  5. 使用 grpcurl 通过命令行访问 gRPC 服务

    原文链接: 使用 grpcurl 通过命令行访问 gRPC 服务 一般情况下测试 gRPC 服务,都是通过客户端来直接请求服务端.如果客户端还没准备好的话,也可以使用 BloomRPC 这样的 GUI ...

  6. 洛谷4172 WC2006水管局长(LCT维护最小生成树)

    这个题和魔法森林感觉有很相近的地方啊 同样也是维护一个类似最大边权最小的生成树 但是不同的是,这个题是有\(cut\)和询问,两种操作.... 这可如何是好啊? 我们不妨倒着来考虑,假设所有要\(cu ...

  7. 快速入门maven

    1.快速介绍 maven(翻译:专家,内行)是apache(一个公司/组织)做的一个项目,或者说是软件,这个东西可以干什么? 可以用它来对咱们做的项目进行改进,增加开发效率,比如帮助你自动导入jar包 ...

  8. FastAPI 学习之路(十一)请求体 - 嵌套模型

    系列文章: FastAPI 学习之路(一)fastapi--高性能web开发框架 FastAPI 学习之路(二) FastAPI 学习之路(三) FastAPI 学习之路(四) FastAPI 学习之 ...

  9. PAT (Basic Level) Practice (中文)1025 反转链表 (25分)

    1025 反转链表 (25分) 给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转.例如:给定 L 为 1→2→3→4→5→6,K 为 3,则输出应该为 3→2→1→6→5→ ...

  10. 【Java虚拟机4】Java内存模型(硬件层面的并发优化基础知识--缓存一致性问题)

    前言 今天学习了Java内存模型第一课的视频,讲了硬件层面的知识,还是和大学时一样,醍醐灌顶.老师讲得太好了. Java内存模型,感觉以前学得比较抽象.很繁杂,抽象. 这次试着系统一点跟着2个老师学习 ...