python学习小笔记

本文介绍了Python的基础知识,包括注释、数据类型(如Number、String、Tuple、List、Set、Dict)的操作,字符串的格式化,算术运算符的使用,以及类和实例的概念,如定义、初始化、成员访问和访问权限控制。
摘要由CSDN通过智能技术生成

入门基础

1.注释:单行注释(#)和多行注释(‘’’ ‘’'或"“” “”")

2.数据类型:

  • Number(数值): int、float、bool、complex(复数)。Python3 整型是没有限制大小的,可以当作 Long 类型使用

  • String(字符串)
    使用单引号、双引号、三单引号和三双引号,其中三引号可以多行定义字符串,Python 不支持单字符类型
    运算符:
    字符串运算符
    索引正向从0开始,反向从-1开始 s[::-1] s[-1]
    替换 s.replace(’ ‘,’ ‘)
    查找:find() index() rfind() rindex()
    s.find(’ ‘) 查不到返回-1
    s.find(’ ‘,开始查找的位置)
    s.index(’ ‘) 查不到会抛异常
    转大小写:upper()、lower()、swapcase()、capitalize()、istitle()、isupper()、islower()
    去空格:strip()、lstrip()、rstrip()
    格式化
    s1 = ‘%s %s’ % (‘Windrivder’, 21) # ‘Windrivder 21’
    s2 = ‘{}, {}’.format(21, ‘Windridver’) # 推荐使用format格式化字符串
    s3 = ‘{0}, {1}, {0}’.format(‘Windrivder’, 21)
    s4 = ‘{name}: {age}’.format(age=21, name=‘Windrivder’)
    连接与分割:使用 + 连接字符串,每次操作会重新计算、开辟、释放内存,效率很低,所以推荐使用join
    l = [‘2017’, ‘03’, ‘29’, ‘22:00’]
    s5 = ‘-’.join(l) # ‘2017-03-29-22:00’
    s6 = s5.split(’-') # [‘2017’, ‘03’, ‘29’, ‘22:00’]
    所有Python字符串都是Unicode字符串,当需要将文件保存到外设或进行网络传输时,要进行编码转换,将字符转为字节

  • Tuple(元组) :不可修改
    元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用
    删除整个元祖 del tup1
    运算符: + (连接)、 *(复制)
    内置函数:len / max / min / tuple

  • List(列表):不需要具有相同的数据类型
    s.index / s.append / s.extend / s.insert / s.pop()移除列表最后一个,并返回该元素值 / s.remove移除列表中第一个匹配的元素 / del s[x] / s.count / s.reverse 方法是将列表中的元素进行反转操作 / s.sort在原位置排序,‘原位置排序’意味着改变原来的列表而让列表中的元素有顺序排列 / s.clear / s.copy / len / max / min / sorted
    pop 和 append 方法是 Python 中数据结构的出栈和入栈

  • Sets(集合) :不重复元素组成的无序的集;大括号 {} 或者 set() 函数创建集合;创建一个空集合set()
    集合不能被切片也不能被索引
    可集合运算:‘-’、‘|’、‘&’、‘^’
    ‘-’:代表前者中包含后者中不包含的元素
    ‘|’:代表两者中全部元素聚在一起去重后的结果
    ‘&’:两者中都包含的元素
    ‘^’:不同时包含于两个集合中的元素
    集合元素可以被添加(add、update(可以一个参数或多个参数-列表、集合))、删除(discard)、移除(remove)

  • Dictionary(字典):{ }创建空字典;

  • 关键字必须是不可变类型,且不能重复:所以可以用数字,字符串或元组充当,用列表就不行

  • 字典是由很多值组成的集合

  • 字典的索引可以是不同的数据类型,同样也不止是整数,也有字符串

  • 字典的索引被称为“键”,键及键所关联的值叫键值对(类似于Java中的Map集合)

  • 字典是另一种可变容器模型,且可存储任意类型对象。

  • 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中

  • 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

  • 赋值会随父对象的修改而修改(=-浅拷贝),拷贝不会随父对象的修改而修改(copy-深拷贝)。
    前三个是不可变的数据类型,后三个是可变的数据类型
    Python提供一些内置数据类型,特别是,dict、 list、set、frozenset、以及 tuple。str 这个类是用来存储Unicode字符串的,而 bytes 和 bytearray 这两个类是用来存储二进制数据的
    http://web.suda.edu.cn/hejun/chapter2/python_2_2.html

3.格式化输出
Python占位符
占位修饰符
(1) -号 表示左对齐
(2).号 表示小数点后位数
(3)0 表示左边补零
print(‘%-2d - %02d’ % (3, 1))
(4)%s可以将任何数据转换为字符串
(5)%%表示字符%
s1 = ‘%s %s’ % (‘Windrivder’, 21) # ‘Windrivder 21’
s2 = ‘{}, {}’.format(21, ‘Windridver’) # 推荐使用format格式化字符串
s3 = ‘{0}, {1}, {0}’.format(‘Windrivder’, 21)
s4 = ‘{name}: {age}’.format(age=21, name=‘Windrivder’)
https://www.jb51.net/article/100202.htm
4.算术运算符
Python运算符
+用于数字表示加法;+用于字符串表示拼接字符串;单独使用+是无效的
减号可用于减法运算,还可以求负运算(正数变为负数,负数变为正数)
*用于数字表示乘法;用于字符串表示重复字符串
/表示普通除法,结果总是小数,不管是否能除尽
//表示整除,只保留结果的整数部分,舍弃小数(不是四舍五入);有小数参与,结果才是小数
%求余运算符,包括整数和小数;求余结果的正负和第一个数字没有关系,只由第二个数字决定;%两边的数字都是整数时,求余的结果也是整数;但是只要有一个数字是小数,求余的结果就是小数。
次方(乘方) 运算符用来求一个 x 的 y 次方,也即次方(乘方)运算符

5.转义
\开头并接三位 0-7 的数值(八进制) — 可以表示所有ASCII 字符
\x 开头并接两位 0-f 的数值(十六进制) — 可以表示所有ASCII 字符
\u 开头并接四位 0-f 的数值(十六进制) — 可以表示所有 Unicode 字符
\U 开头并接八位 0-f 的数值(三十二进制)) — 可以表示所有 Unicode 字符
\ 开头后接除 x、u、U 之外的特定字符 — 仅可表示部分字符

不希望 Python 将 \n 转义成 换行符:
方法一:符串前面加个 r 或者 R 即可—print(r"hello\nworld")
方法二:由某个程序/函数返回给你的使用repr()
方法三:import codecs
body=“hello\nworld”
codecs.decode(body, ‘unicode_escape’)

判断与循环

函数与类定义操作

类表示具有相同属性和方法的对象的集合
在使用类时,需要先定义类,然后再创建类的实例,通过类的实例就可以访问类中的属性和方法
1.定义类:class ClassName:
statement
类名:命名方法使用“驼峰式命名法”,使用大写字母开头
类体:主要由类变量(或类成员)、方法和属性等定义语句组成
2.创建类的实例:ClassName(parameterlist)
ClassName:必选参数,指定类
parameterlist:可选参数。创建一个类时,没有创建__init__()或该方法只有一个self参数时,parameterlist可忽略
3.init()方法:类似构造函数。每当创建一个类的新实例时,Python会自动执行该方法。
init()方法必须包含一个参数,并且必须是第一参数。
self参数是一个指向实例本身的引用,用于访问类中的属性和方法。
方法调用时会自动传递实际参数self。因此,当__init__()方法只有一个参数时,在创建类的实例时,就不需要指定参数
4.创建类的成员并访问:类的成员主要由实例方法和数据成员组成。在类中创建了类的成员后,可以通过类的实例进行访问
创建实例方法并访问
所谓实例方法是指在类中定义函数。实例方法的第一参数必须是self,并且必须包含一个self参数
def functionName(self,parameterlist):
block

functionName:一般使用小写字母开头
self:必要参数,表示类的实例
parameterlist:用于指定除self参数以外的参数,各参数间使用逗号“,”进行分隔

实例创建完成后,可以通过类的实例名称和点(.)操作符进行访问
instanceName.functionName(parametervalue)
instanceName:为类的实例名称
functionName:为要调用的方法名称
parametervalue:表示为方法指定对应的实际参数,其值的个数与创建实例方法中parameterlist的个数相同
创建数据成员并访问:数据成员是指类中定义的变量,即属性,根据定义位置,又可以分为类属性和实例属性
类属性:在定义类中,并且在函数体外的属性。在类的所有实例之间共享值,也就是在所有实例化的对象中公用
实例属性:定义在类的方法中的属性,只作用于当前实例中
实例属性只能通过实例名访问。如果通过类名访问实例属性,将抛出异常。
5.访问权限:在属性或方法名前面添加单下划线(_foo)、双下划线(__foo)或者首尾加双下划线( __ foo ),从而限制访问权限
__ foo __ : 首尾双下划线表示定义特殊方法,一般是系统定于名字,如__init
()。
_foo:以单下划线开头的表示protected(保护)类型的成员,只允许类本身或子类访问,但不能使用“ from module impor”语句导入。保护属性可以通过实例名访问
__foo:表示private(私有)类型的成员,只允许定义该方法的类本身进行访问,而且也不能通过类的实例进行访问,但是可以通过“类的实例名.类名 __xxx”方式访问。私有属性可以通过“类名.属性名”方式访问,也可以通过“实例名.类名__xxx”方式访问,但是不能直接通过“实例名.属性名”方式访问

https://blog.csdn.net/weixin_45191386/article/details/124551799

kafka发送消息

正则表达式

文件操作

异常处理

unittest框架

json转义

日志类

flask服务

数据库操作

统一认证登录

自动化框架构建

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值