【老板归来了】系列更新啦python
这个系列主要用来记录「python」和「数据分析」学习过程当中的一些内容git
既然是写出来分享的东西,就要负责一点,不让你们看的那么枯燥web
但愿你们工做顺利,每天开心~api
今天,可恶的产品又提了一个奇葩的需求,她居然想让咱们的app跟随用户手机壳颜色改变主题颜色!app
一下午我都在筋疲力尽地解释这是不可能实现的,可她仍然不依不饶。就在这时候,老板叫我去他办公室。编辑器
小方啊,今天我加了一个python学习交流群,我把我字符串逆序输出的代码发到群里,他们都在笑话我,你看看是怎么回事?函数
.... 老板你怎么写的学习
我就建立一个列表,遍历了一下原字符串,而后把字符从列表尾部复制过去,最后把字符列表转化成字符串输出。有什么问题吗?url
额,老板你直接用运算符strA[::-1]
就能够了...spa
卧槽!这么简单?!那我还像个傻子似的写了那么多!
= =
你!把你知道的相似的操做都整理一份,下班前发给我!
。。。好的
晚上10点,我把整理的东西发给了老板..
(1)若是不但愿字符串中的\
表示转义,能够经过在字符串的最前面加上字母r
s1 = r'\'hello, world!\''
print(s1) # hello
复制代码
(2)能够用in
和not in
来判断一个字符串是否包含另外一个字符串
str1 = 'abc123456'
print('abc' in str1) # True
print('jkl' in str1) # False
复制代码
(3)能够用[ ]
和[:]
作字符串切片或截断操做
[a:b:c]
a,b
正数表示索引从首部开始,负数表示从尾部开始,c
表示步长
str1 = 'abc123456'
print(str2[2:5]) # c12
print(str2[2:]) # c123456
print(str2[2::2]) # c246
print(str2[::2]) # ac246
print(str2[::-1]) # 654321cba
print(str2[-3:-1]) # 45
复制代码
(4)经常使用函数
str1 = 'hello, world!'
# 得到字符串首字母大写的拷贝
print(str1.capitalize()) # Hello, world!
# 得到字符串每一个单词首字母大写的拷贝
print(str1.title()) # Hello, World!
# 从字符串中查找子串所在位置
print(str1.find('or')) # 8
# 检查字符串是否以指定的字符串开头
print(str1.startswith('He')) # False
# 输出指定长度的字符串,str1居中,左右是指定的字符 *
print(str1.center(50, '*')) # ***..**hello, world!**..***
# 输出指定长度的字符串,str1靠右放置,左侧是指定的字符
print(str1.rjust(50, ' ')) # hello, world!
-----------------------------------------------------------
str2 = 'abc123456'
# 检查字符串是否由数字构成
print(str2.isdigit()) # False
# 检查字符串是否以字母构成
print(str2.isalpha()) # False
# 检查字符串是否以数字和字母构成
print(str2.isalnum()) # True
-----------------------------------------------------------
str3 = ' jackfrued@126.com '
print(str3)
# 得到字符串修剪左右两侧空格以后的拷贝
print(str3.strip()) # jackfrued@126.com
复制代码
(5)模板字符串
a, b = 5, 10
print('{0} * {1} = {2}'.format(a, b, a * b))
复制代码
a, b = 5, 10
print(f'{a} * {b} = {a * b}') #【python3.5以后在字符串前加上字母f】
复制代码
(1)如何遍历获取元素的索引和值
# 经过enumerate函数处理列表以后再遍历能够同时得到元素索引和值
for index, elem in enumerate(list1):
print(index, elem)
复制代码
(2)经常使用方法
list1 = [1, 3, 5, 7, 100]
# 添加元素
list1.append(200)
list1.insert(1, 400)
# 合并两个列表
# list1.extend([1000, 2000])
list1 += [1000, 2000]
print(list1) # [1, 400, 3, 5, 7, 100, 200, 1000, 2000]
print(len(list1)) # 9
# 先经过成员运算判断元素是否在列表中,若是存在就删除该元素
if 3 in list1:
list1.remove(3)
if 1234 in list1:
list1.remove(1234)
print(list1) # [1, 400, 5, 7, 100, 200, 1000, 2000]
# 从指定的位置删除元素
list1.pop(0)
list1.pop(len(list1) - 1)
print(list1) # [400, 5, 7, 100, 200, 1000]
# 清空列表元素
list1.clear()
print(list1) # []
复制代码
(3)列表的生成式语法
使用列表的生成式语法来建立列表
f = [x for x in range(1, 10)]
print(f)
-----------------------------------------------------------
f = [x + y for x in 'ABCDE' for y in '1234567']
print(f) # ['A1', 'A2',...,'E7']
-----------------------------------------------------------
# 用列表的生成表达式语法建立列表容器
f = [x ** 2 for x in range(1, 1000)]
print(f) # [1, 4, 9, 16, 25...]
复制代码
未完待续... ...