python学习文档

七、字符串处理
1.编码

2.5 检索字符串

str.count(item,start,end) 
# 返回str字符串中start至end中有多少个item
str.find(item,start,end) 
str.rfind()
# 返回str字符串中start至end中是否有item
# 0为存在 -1为不存在
# find从字符串左侧开始查找,rfind则为从右侧开始
item in str
# 返回ture/false
# str中是否有item
str.index(item,start,end)
# 返回item在str中的第一个位置
str.startswith(item,start,end)
str.endswith(item,start,end)
#str字符串是否以item起始/结束

2.6 大小写转换

str.lower() # 转换为小写
str.upper() # 转换为大写

2.7 去除字符串中空格和特殊符号
特殊字符: \t \r \n

str.strip([chars]) # 仅去除左右两侧的[chars]
# 默认[chars]为空格+特殊字符

str.lstrip() # 仅去除左侧字符
str.rstrip() # 仅去除右侧字符

2.8 格式化字符串
(1)%操作符

%[(name)][flags][width].[precision]typecode

(2)format()

str.format(args)
[[fill]align][sign][#][0][width][,][.precision][type]

八、正则表达式
8.1.1.行定位符
^ 表示开始
$ 表示结束

8.1.2.元字符
^ $
. 除换行以外的任意字符
\w 字母、数字、下划线或汉字
\W 匹配\w匹配不到的
\s 匹配任意空白符
\b 匹配单词的开始或结束
\d 匹配数字

8.1.3.限定符
? 匹配前面的字符1次或0次

  • 匹配前面的字符1次或多次
  • 匹配前面的字符0次或多次

8.1.4.字符类
[] 匹配括号内字符

8.1.5.排除字符
[^str] 匹配排除str的字符串

8.1.6.选择字符
| 或

8.1.7.转义字符
\

8.1.8 分组
()

8.2.1 匹配字符串

re.match(pattern,string,[flags]) # 返回匹配的所有字符
# [flags]:  re.I 不区分大小写 re.A 让\w不匹配汉字

re.search(pat,str,[flags]) # 返回匹配的第一个字符 

re.findall(pat,str,[flags]) # 返回所有匹配结果的列表

8.2.2 替换字符串

re.sub(pattern,repl,str,count,[flags])

8.2.3 分割字符串

re.split(pattern,string,[max_split],[flags])

九、函数
9.1.1 函数的创建

def functionname([parameterlist]):
    ['''comments''']
    [functionbody]    

9.1.2 函数的调用

functionname([parameterlist])

9.2.4 为参数设置默认值

def function(parameters... , [parameter1 = defaultvalue1]):  # defaultvalue最好是不可变对象
    [functionbody]

# 例
def plus(a='1',b = '1'):
    c = a+b
    return c

# 查看函数自定义的默认值
function.__defaults__

9.2.5 可变参数

def function(*parameters): # *parameters 是 列表
    [function]


def function(** parameters):  # **parameters 是 字典
    [function]
# 例
def sign(**sign):
    print()
    for key,value in sign.items(): # 遍历字典
        print(key,"的星座是:",value)
sign(person1 = '水瓶',person2 = '处女')

9.3 返回值

return [value1,value2,...] # 没有值则返回None

9.4 变量的作用域
局部变量:
1、仅在定义它的函数体内能够访问,函数外部无法访问。
2、使用global函数可以使它变为全局变量
全局变量:
1、既能在函数体内访问,又能在函数外部访问。
2、不使用global函数来创建或者操作全局变量时必须在函数体外。

9.5 匿名函数 lambda

result = lambda [arg1 [,arg2,...,argn]]:expression

#example
result = lambda [x,y]: x*y
print(result(1,2))
2

十、面向对象
10.2.1 定义类

class ClassName:
    '''类的帮助信息'''
    statement # 定义属性和方法
# 类的命名建议为大写开头的“驼峰式命名法” 例:ClassName 、ExampleClass

10.2.2 创建类的实例

ClassName(parameterlist)

10.2.3 创建init()方法

class ClassName:
    def __init__(self):    # 定义构造方法
        print("类名")

10.2.4 创建类的成员并访问

# 创建类的成员
def functionName(self,parameterlist): # self是必须的参数
    block

# 访问
instanceName.functionName(parametervalue)

# 类属性
class ClassName:
    attribute = value

# 输出类属性
ClassName.attribute

# 实例属性
class ClassName:
    def __init__(self):
        self.attribute = value # 实例属性
    attribute = value # 类属性

10.2.5 访问限制

_foo # protected 保护类型 可以通过实例名访问
__foo # private 私有类型 不可以通过实例名访问
__foo__ # 系统

# 访问private类型的属性
class = ClassName()
class._ClassName__foo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容