python3 知识点梳理

编码:# -*-coding:utf-8-*-
标识符、保留字、注释、多行语句、数字类型、字符串
标准数据类型:数字、字符串、列表、元组、组合、集合、字典
集合:可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
运算符:算术、比较、赋值、逻辑、位、成员in /not in、身份is /is not

常用模块

os
sys
glob:文件通配符
re
math
random
urllib
time、datetime
zlib
timeit:性能度量
json:json.dumps()、json.loads()

>>> import glob
>>> glob.glob('*.py')
['primes.py', 'random.py', 'quote.py']

两个下划线开头为私有属性,只能在类中使用
继承

#!/usr/bin/python3
 
#类定义
class people:
    #定义基本属性
    name = ''
    age = 0
    #定义私有属性,私有属性在类外部无法直接进行访问
    __weight = 0
    #定义构造方法
    def __init__(self,n,a,w):
        self.name = n
        self.age = a
        self.__weight = w
    def speak(self):
        print("%s 说: 我 %d 岁。" %(self.name,self.age))
 
#单继承示例
class student(people):
    grade = ''
    def __init__(self,n,a,w,g):
        #调用父类的构函
        people.__init__(self,n,a,w)
        self.grade = g
    #覆写父类的方法
    def speak(self):
        print("%s 说: 我 %d 岁了,我在读 %d 年级"%(self.name,self.age,self.grade))
 
 
 
s = student('ken',10,60,3)
s.speak()
>>> ken 说:10 岁了,我在读 3 年级

运算符重载


实例(Python 3.0+)
#!/usr/bin/python3
 
class Vector:
   def __init__(self, a, b):
      self.a = a
      self.b = b
 
   def __str__(self):
      return 'Vector (%d, %d)' % (self.a, self.b)
   
   def __add__(self,other):
      return Vector(self.a + other.a, self.b + other.b)
 
v1 = Vector(2,10)
v2 = Vector(5,-2)
print (v1 + v2)

错误和异常

try:
	xxxx
except:
	xxxx
else:
	xxxxx
finally:
	xxxx

抛出异常、自定义异常

数字

类型转换函数
数学函数
随机数函数
三角函数
数学常量:pi 、e

字符串

转义字符
字符串格式化
字符串内建函数

列表

删除:del
添加:
统计:
追加:
索引:
插入:
反向:
排序:
清空:
复制:

条件语句

if age<0:
	xxxx
elif age = 0:
	xxxx
else:
	xxx

迭代与循环

next()函数
StioIteration停止迭代

函数与不可变类型

  • 不可变类型:类似 c++ 的值传递,如 整数、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。
  • 可变类型:类似 c++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后fun外部的la也会受影响

关键字参数、默认参数、不定长参数

#!/usr/bin/python3
  
# 可写函数说明
def printinfo( arg1, *vartuple ):
   "打印任何传入的参数"
   print ("输出: ")
   print (arg1)
   print (vartuple)
 
# 调用printinfo 函数
printinfo( 70, 60, 50 )
以上实例输出结果:
	70
	(60, 50)

加了两个星号 ** 的参数会以字典的形式导入。

实例(Python 3.0+)
#!/usr/bin/python3
  
# 可写函数说明
def printinfo( arg1, **vardict ):
   "打印任何传入的参数"
   print ("输出: ")
   print (arg1)
   print (vardict)
 
# 调用printinfo 函数
printinfo(1, a=2,b=3)
以上实例输出结果:
	1
	{'a': 2, 'b': 3}

声明函数时,参数中星号 * 可以单独出现,例如:

def f(a,b,*,c):
    return a+b+c
#如果单独出现星号 * 后的参数必须用关键字传入。

>>> def f(a,b,*,c):
...     return a+b+c
... 
>>> f(1,2,3)   # 报错
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: f() takes 2 positional arguments but 3 were given
>>> f(1,2,c=3) # 正常
6

匿名函数:lambda [arg1 [,arg2,.....argn]]:expression
作用域:global、nonlocal

数据结构

遍历技巧:items()、enumerate()、zip()、reversed()、sorted()

模块

if __name__ == '__main__':
	xxxxx

dir()函数

输入输出

str()、repr()、rjust()、str.format()、zfill、%格式化

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值