python基础学习7
作者:互联网
python基础学习7
内容概要
- 字符串的内置方法
- 字符串的内置方法(补充)
- 列表的内置方法
- 可变类型与不可变类型
- 队列与堆栈
内容详情
字符串的内置方法
# 1.strip
移除字符串首尾的指定字符 可以选择方向
str.strip('') 指定引号里的字符
str.lstrip('') left 左边
str.rstrip('') right 右边
# 2.lower upper
将所有的英文字母变为小写 str.lower()
将所有的英文字母变为大写 str.upper()
判断字符串中所有的英文字母是否是纯小写 str.islower() 结果是布尔值
判断字符串中所有的英文字母是否是纯大写 str.isupper() 结果是布尔值
# 3.startswith endswit
判断字符串的开头或者结尾是否是指定的字符 str.startswith('') str.endswith('') 指定引号里的字符 结果是布尔值
# 4.format
格式化输出
方式1 占位符:%s %d
方式2 format方法 >>> 4种
1.跟占位符一致 使用的{}占位 print('my name is {} my age is {}'.format('jason', 18))
2.根据索引取值 可以反复使用 print('my name is {0} {0} {0} my age is {0} {1}'.format('jason', 18))
3.根据指名道姓的方式取值 print('my name is {name} {name} my age is {age} {pwd}'.format(name='jason', age=18, pwd=123))
4.直接使用已经出现过的变量 name = 'jason ' age = 18 print(f'my name is {name} my age is {age} {name} {age}')
"""python官网很久以前就说推荐使用format做格式化输出 甚至说%s要被砍掉"""
# 5.+ * jion
拼接字符串
str1 + str2 如果字符串很大 加号效率较低
str * 10 重复次数
''.join(str) eg:str = '123' print('|'.join(str)) # 1|2|3
print('$'.join(['jason', 'kevin', 'justin', 'tony'])) # jason$kevin$justin$tony
'''join方法相当于是将括号内的元素进行for循环'''
l1 = [11, 'jason', 'kevin']
print('|'.join(l1)) # join的元素必须都是字符串才可以 否则报错
# 6.replace
替换字符串中指定的字符
str = 'abcdefabcdefabcdef'
将a替换成b str.replace('a', 'b') 默认一次性替换所有
指定替换的个数 str.replace('a', 'b',n) 还可以通过数字控制替换的个数 从左往右
'''很多文本编辑器里面的替换功能 就可以使用replace完成'''
# 7.isdight
判断字符串中是否是纯数字 str.isdigit() 结果是布尔值
字符串的内置方法(补充)
# 1.find index
查找指定字符对应的索引值 str.find('') 指定引号里的字符 从左往右查找 查找一个就结束
框定在(n1,n2)(范围顾头不顾尾) str.find('', n1, n2) # -1 意思是没有 找不到
str.index('') str.index('', n1, n2) # 找不到直接报错 不推荐使用
# 2.center ljust rjust zfill
文本位置改变
str.center(n, '') str居中,左右填充n个''
str.ljust(n, '') str左对齐,右边填充n个''
str.rjust(n, '') str右对齐,左边填充n个''
str.zfill(n) zero 零 str前填充n个0
# 3.r'''
特殊符号:斜杠与一些英文字母的组合会产生特殊的含义
print('ja\tson\nke\avin')
# ja son
kevin
print(r'ja\tson\nke\avin')
# ja\tson\nke\avin
'''如果想取消它们的特殊含义 可以在字符串的前面加一个字母r'''
# 4.captalize swapcase title
captalize:首字母大写 str.capitalize()
swapcase:大小写翻转 str.swapcase()
title:每个单词的首字母大写 str.title()
列表的内置方法
一、类型转换
list可以转换支持for循环的数据类型
可以被for循环的数据类型:字符串 列表 字典 元组 集合
二、常见操作
name_list = ['jason', 'kevin', 'tony', 'tom', 'jerry']
# 1.索引取值
print(name_list[0]) 第一位
print(name_list[-1]) 最后一位
# 2.切片操作
print(name_list[1:4]) # ['kevin', 'tony', 'tom']
print(name_list[-4:-1]) # ['kevin', 'tony', 'tom']
print(name_list[-1:-4:-1]) # ['jerry', 'tom', 'tony']
# 3.步长
print(name_list[0:4:1]) # ['jason', 'kevin', 'tony', 'tom']
print(name_list[0:4:2]) # ['jason', 'tony']
print(name_list[-1:-4:-1]) # ['jerry', 'tom', 'tony']
# 4.len
统计列表中元素的个数 print(len(name_list)) # 5
# 5.成员运算 in
最小判断单位是元素不是元素里面的单个字符
print('j' in name_list) # False
print('jason' in name_list) # True
# 6.append insert extend
列表添加元素的方式
尾部追加'单个'元素 list.append('') 指定引号里的'单个'元素
指定位置插入'单个'元素 list.insert(n, '') 指定位置[n]插入引号里的'单个'元素
合并列表 list1.extend(list2) '''extend其实可以看成是for循环+append'''
for i in list2
list1.append(i)
list1+list2 # 加号的效率不高
# 7.del remove pop
删除元素
通用的删除方式 del list[n]
就地删除 list.remove('') # 指名道姓的直接删除某个元素
延迟删除 list.pop() 默认是尾部弹出
list.pop(n) 还可以指定索引值
# 8.list[n] = '' 修改列表元素
# 9.sort sort(reverse=True)
排序
list.sort() 默认是升序
list.sort(reverse=True) 可以修改尾降序
# 10.reverse 翻转
前后颠倒 list.reverse()
# 11.比较运算
"""列表在做比较的时候 其实比的是对应索引位置上的元素"""
# 12.conut
统计列表中某个元素出现的次数 list.count('') 统计元素''出现的次数
# 13.clear 清空列表 list.clear()
可变类型与不可变类型
s1 = '$$$jason$$$'
print(s1.strip('$')) # jason
print(s1) # $$$jason$$$
s2 = [1, 2, 3]
print(s2.extend([11, 22, 33, 44, 55])) # None 空
print(s2) # [1, 2, 3, 11, 22, 33, 44, 55]
print(id(s2)) # 2171184953160
s2.append(11111111)
print(id(s2)) # 2171184953160
队列与堆栈
队列 先进先出
堆栈 先进后出
使用列表模拟出队列与堆栈的特征
# 队列
new_list = []
先进
new_list.append(111)
new_list.append(222)
new_list.append(333)
先出
print(new_list.pop(0)) # 111
print(new_list.pop(0)) # 222
print(new_list.pop(0)) #333
# 堆栈
new_list = []
先进
new_list.append(111)
new_list.append(222)
new_list.append(333)
后出
print(new_list.pop()) # 333
print(new_list.pop()) # 222
print(new_list.pop()) # 111
标签:jason,name,python,基础,list,学习,str,print,new 来源: https://www.cnblogs.com/keep-on-going/p/15987221.html