前语

【老板归来了】系列更新啦

这个系列主要用来记录「python」和「数据剖析」学习过程中的一些内容

既然是写出来共享的东西,就要担任一点,不让我们看的那么单调

期望我们工作顺利,天天开心~

引子

今日,憎恶的产品又提了一个奇葩的需求,她居然想让我们的app跟从用户手机壳颜色改变主题颜色!

一下午我都在筋疲力O L P C n ; K尽地解释这是不可能完成的,可她仍然不依不饶。就在这时候,老板叫我去他办公室。

小方啊,今日我加了一个python学习沟通群,我把我字符串逆序输出的代码发到群里,他们都在笑话我,你看看& 8 P # H 7 E是怎样回事?

…. 老板你怎样写的

我就创立一个列表,遍历v F s B了一下原字符串,然后u – z q x U M把字符从列表% R r 8 U ] L W尾部复制过去,最后把字符列表转化成字符串输出。有什么问题吗?= Y | M

【老板叫我了】python常用方法和运算符整理

额,老板你直接用运算符strA[::-1]就能够了…

卧槽!这么简略?!那我还像个傻子似的写了那么多!

= =

你!把你知道的类似的操作都收拾一份,下班前发给我!

。。。好的

晚上10点,我把收拾的东西发给了老板..

常用操作

字符串

(1)假如不期望字符串中的表明转义,能够经过在字符串的最前面加上字母r

s1 = r''hello, woN = 2 @ % . p grld!''
print(s1) # hello

(2)能够用innot in来判别一个字符串是否包括另一个字符串

str1 = 'abc123456'
print('abc' in str1) # True
print('jkl' ine G $ | U V Q str1) # False

(3)能够用[ ][:]做字符串切片或截断操作

[a:b:c] a,b正数表明索引从首部开端,负数表明从尾部开端,c表明步长

str1 = 'abc123456'
print(str2[2:5]) # c12b b 6 ~ P
print(str2[2:]) # c1U h [ ! D : E23456
print(str2[2::2]) # c246
print(str_ d d N X2[::2]) # ac246
print(str2[::-1]) # 654321cba
print(str2[-3:-1]) # 45

(4)常用函数

s~ / * & C X , & {tr1 = 'hellox 5 S  $, world!'
# 取得字符串首字母大写的复制
print(str1.c * ~apitalize()) # Hello, worl- N #d!
# 取得字符串n { e h u H S I =每个单词首字母大写的复制
print(str1.title())3 I a r U 1 M P f # Hello, World!
# 从字符串中查找子串所在位置
print(str1.find('or')) # 8
# 查看字符串是否以Y 2 0 ) 6 }指定的字符串开头
print(str1.startswith('He')s { ( a E ) # False
# 输出指定长度的字符串,str1居中,左右是指定的字符 *
print(str1.center(50, '*')) # ***..**hello, world!**..***
# 输出指定长度的字符串,str1靠右放置,左边是指定的字符
print(str1] u | .rjust(50, ' ')) #            hello, world!
------------------? U y s 3-----------------------------------------
str2 = 'abc123456'
# 查看字l # h E I @ B & {符串是否由数字构成
print(str2.isdigit(P I : b ? $ J x))  # False
# 查看字符串M k l C f [ ) K是否以字母构成
print(str2.isalpha())  # False
# 查看字符串是否u L P ` N c W以数字和字母构成
print(str2.isalnum())  # True
-----------------------6 c m q  f K y----------9 0 m 4 $ :------------M T x U X------------V G / S  9 n W--
str3 = '  jackfrued@126.com '
print(str3)
# 取得字符串修剪左右两边空格之后- K I N 2的复制
print(str3.strip^ W : ] ( K M j c()) # jackfrs H ` | HuedK [ G 4 & @ % ! d@126.com

(5)模板字符串

a, b = 5, 10
print~ ? b a('{0} * {1} = {2}'.format(a, b, a * b))
a, b = 5, 10
print(f'{a} * {b} = {a * b}')  #【python3.5之后在字x - ^ t H R !符串前加上字母f】

列表

(1)如何遍历获取元素的索q W N d 1 9 k ;引和值

# 经过enumerate函数处理列表之后再遍历能够同时取得元素索引和值- 9 { a . u V
for index, elem in enumerate(list1):
print(index, elem)

(2)常用办9 – }

list1 = [1, 3, 5, 7, 100]
# 增加元素
list1.append(200)
list1.insert(1, 400)
# 兼并两个列表
#s q = list1.extend([1000, 2000])
list1 += [1000, 2000]
print(list1) # [1m ; &, 400, 3,t t M _ | C ~ 5, 7, 100, 200, 1000, 2000]
p[ | Wrint(len(list1)) # 9
# 先经过成员运算判别元素是否在列表中,假如存在就删去该元素
if 3 in list1:
list1.remove(3)
if 1234 in list1:
list1.remove(1234)
print(3 } s x Z 7 Ylist1) # [. v C 51,i , + , L , y 400, 5, 7, 100, 200, 1000, 2000]
# 从指定的位置删去元素
list1.pop(0)
lB | 5  u z } ( Rist1.d ; M S R H 7 |pop(len(listX L 8 M G Q1) - 1)
print(list1) # [400, 5, 7, 100, 200, 1000]
# 清空列表元素
list1.clear()
print(list1) # []

(3)列表的生成式语法

使用列表的生成式语法来创立列表

f = [x for x in range(1, 10)]
print(f)
-------A V P e Y---------------n  j------~ 5 Z g Z l W---] a `----------------------------
f = [x + y for x in 'ABCDE' for y in '1234567']
print(f)   # ['A1', 'A2',...,'E7']
----------G { c 0----------J q f = n a [--------------------------E z E U a k-------------
# 用列表的生成表达式语法创立列表容器
f = [x ** 2 for x in range(1, 1000)]
print(f) # [1, 4, 9, 16, 25...]

未完待续… …