python基础知识整理

python3 -m pip install [...]  在python3中使用-m打开某一模块

一、迭代器
for 循环实现迭代器
对于字典的迭代
迭代键值对
for x,y in dict1.items():
...     print(x,y)

迭代key值
for x in dict1:
...     print(x)

迭代value值
for y in dict1.values():
...     print(y)
...

二、列表生成式
要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用list(range(1, 11))
直接生成一个列表
 [x*x for x in range(1,11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

两层循环生成全排列
 [m+n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']

因此,列表生成式也可以使用两个变量来生成list:
>>> d = {'x': 'A', 'y': 'B', 'z': 'C' }
>>> [k + '=' + v for k, v in d.items()]
['y=B', 'x=A', 'z=C']

最后把一个list中所有的字符串变成小写:
>>> L = ['Hello', 'World', 'IBM', 'Apple']
>>> [s.lower() for s in L]
['hello', 'world', 'ibm', 'apple']

三、生成器(generator)优点是动态生成,节约内存
一边循环一边计算的机制,跟列表生成式差不多,只需要将[]改成(),则变为了生成器,元>素需要一个一个迭代输出,比如通过next(生成器的名称)挨个输出,用for简便输出
如果在一个函数值中有了关键子yield,则此函数不再是普通函数,而是一个generator,注意
yield的用法
四、函数式编程

1、高阶函数
使用map和Iterable
将函数作用于list的每一个元素,然后将结果返回一个迭代器Iterable,最后把迭代返回的>惰性序列重新生成一个新的list对象
def f(x):
...     return x*x
...
>>> li=[1,2,3,4,5,6,7,8,9]
>>> r=map(f,li)
>>> list(r)
[1, 4, 9, 16转换成8进制

七、类和实例转换成8进制

七、类和实例, 25, 36, 49, 64, 81]

reduce的用法:reduce把函数作用在序列上,然后把结果何须列的下一个元素做累加计算
比如,求加法运算
from functools import reduce
>>> def fn(x,y):
...     return x*10 +y
...
>>> reduce(fn,[1,3,5,7,9])
13579

filter()用于过滤序列
filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还>是丢弃该元素。
def is_odd(n):
    return n % 2 == 1

list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))
# 结果: [1, 5, 9, 15]

sorted()实现排序,括号内一个参数是list或是别的,另一个参数控制排序,比如reverse=Ture,从大到小排序,reverse=False,从小到大排序

五、装饰器(decorator)代码运行期间动态增加函数功能
注意@log 打印日志的功能
六、偏函数
转换成n进制的数值  int('123445',base=8)转换成8进制

七、类和实例

实例的变量名如果以__开头,就变成了一个私有变量(private),只有内部可以访问,外部不能访问,
self.__name='dsd'

__slots__ 使用
为了达到限制的目的,Python允许在定义class的时候,定义一个特殊的__slots__变量,来限制该class实例能添加的属性:

class Student(object):
    __slots__ = ('name', 'age') # 用tuple定义允许绑定的属性名称
>>> s = Student() # 创建新的实例
>>> s.name = 'Michael' # 绑定属性'name'
>>> s.age = 25 # 绑定属性'age'
>>> s.score = 99 # 绑定属性'score'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python基础知识整理包括以下几个方面: 1. 数据类型:Python中常见的数据类型有整数(int)、浮点数(float)、字符串(str)、布尔值(bool)、列表(list)、元组(tuple)、字典(dict)等。 2. 变量和赋值:在Python中,可以使用变量来保存数据,并使用赋值语句将值赋给变量。变量名可以由字母、数字和下划线组成,但不能以数字开头。 3. 运算符:Python支持常见的算术运算符(如加减乘除)、比较运算符(如等于、大于、小于等)、逻辑运算符(如与、或、非)等。 4. 控制流程:Python中的控制流程包括条件语句(if-else)、循环语句(while和for)以及跳转语句(break和continue)等。 5. 函数和模块:函数是一段可重复使用的代码块,可以通过函数来组织代码和实现代码的复用。而模块是一个包含了函数、类和变量的文件,可以通过import语句导入并使用。 6. 异常处理:在编写程序时,可能会出现错误,为了避免程序崩溃,可以使用异常处理机制来捕捉和处理错误,保证程序的正常执行。 7. 文件操作:Python提供了丰富的文件操作函数,可以读取和写入文件内容,以及对文件进行其他操作。 8. 面向对象编程:Python是一种面向对象的编程语言,支持类和对象的概念,可以通过定义类来创建对象,并使用对象调用类中的方法和属性。 这些是Python基础知识的主要内容,希望对你有所帮助。如果你有具体的问题,可以继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值