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. 11.5.1 LVS-DR 实验

    lvs-server VIP:10.211.55.99 DIP:10.211.55.23 负载均衡器   rs01 RIP:10.211.55.24 后端服务器   rs02 RIP:10.211.5 ...

  2. 阿里云函数计算发布新功能,支持容器镜像,加速应用 Serverless 进程

    我们先通过一段视频来看看函数计算和容器相结合后,在视频转码场景下的优秀表现.点击观看视频 >> FaaS 的门槛 Serverless 形态的云服务帮助开发者承担了大量复杂的扩缩容.运维. ...

  3. ApacheCon 首次亚洲大会火热来袭,SphereEx 邀您共赴年度盛会!

    ApacheCon 是 Apache 软件基金会(ASF)的官方全球系列大会.作为久负盛名的开源盛宴,ApacheCon 在开源界备受关注,也是开源运动早期的知名活动之一. ApacheCon 每年举 ...

  4. JAR文件

    目录 JAR文件 创建JAR文件 jar程序选项 清单文件 注释 可执行JAR文件 警告 多版本JAR文件 注释 关于命令行选项的说明 警告 警告 JAR文件 在将应用程序打包时,你一定希望只向用户提 ...

  5. Lynis 漏洞扫描工具部署及效果展示

    Lynis 漏洞扫描工具部署及效果展示 介绍 Lynis是一个安全审计工具,它可以在Linux,macOS和其他基于Unix的系统上运行.Lynis的主要重点是执行系统的运行状况检查,它还有助于检测漏 ...

  6. ❤️【Python从入门到精通】(二十七)更进一步的了解Pillow吧!

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 进一步介绍Pillow库的使用,详细了解 干货满满,建议收藏,需要用到时常看看. 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~. 前言 本文是 ...

  7. 微软Windows11安卓子系统已支持运行APK 应用(附手把手详细安装攻略)怎么安装安卓/如何安装安卓应用/支持多窗口多任务

    ​​ 10 月 21 日消息,微软博客宣称,Windows 11 上 安卓子系统运行 Android  应用程序的第一个预览版现已提供给美国 Beta 频道的 Windows 内部人员.但现在通过教程 ...

  8. WEB安全指南

    说明:本文是Mozilla Web应用部署文档,对运维或者后端开发团队的部署行为进行指导.该部署安全规范内容充实,对于部署有很大意义.同时也涉及到了许多web前端应用安全的基本知识,如CSP, TOK ...

  9. NOIP模拟83(多校16)

    前言 CSP之后第一次模拟赛,感觉考的一般. 不得不吐槽多校联测 OJ 上的评测机是真的慢... T1 树上的数 解题思路 感觉自己思维有些固化了,一看题目就感觉是线段树. 考完之后才想起来这玩意直接 ...

  10. LeetCode:并查集

    并查集 这部分主要是学习了 labuladong 公众号中对于并查集的讲解,文章链接如下: Union-Find 并查集算法详解 Union-Find 算法怎么应用? 概述 并查集用于解决图论中「动态 ...