2021-10-08
47
迭代器与生成器迭代器(iterator)与生成器(generator)是 Python 中比较常用又很容易混淆的两个概念,今天就把它们梳理一遍,并举一些常用的例子。for 语句与可迭代对象(iterable object):for i in [1, 2, 3]: print(i)obj = {"a": 123, "b": 456}for k in obj: print(k)这些可以用在 for 语句进行循环的对象就是可迭代对象。除了内置的数据类型(列表、元组、字符串、字典等)可以通过 for
2021-10-08
55
迭代器:初探上一章曾经提到过,其实for循环是可用于任何可迭代的对象上的。实际上,对Python中所有会从左至右扫描对象的迭代工具而言都是如此,这些迭代工具包括了for循环、列表解析、in成员关系测试以及map内置函数等。“可迭代对象”的概念在Python中是相当新颖的,基本这就是序列观念的通用化:如果对象时实际保存的序列,或者可以再迭代工具环境中一次产生一个结果的对象,那就看做是可迭代的。>>文
2021-10-08
120
不解释,直接上代码:12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758<span style="color: #008080"> 1</span> <span style="color: #008000">#</
2021-10-08
52
虽然Python是解释性语言,但是它是面向对象的,能够进行对象编程。下面就来了解一下如何在Python中进行对象编程。一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法。1.什么是面向对象面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的。应用在编程中,是一种开发程序的方法,它将对象作为程序的基本单元。2.面向对象与面向过程的区别我们之前已经介绍过面向过程了,面向过程的核心在‘过程’二字,
2021-10-08
49
产生背景编辑随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。搜索引擎(Search Engine),例如传统的通用搜索引擎AltaVista,Yahoo!和Google等,作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。但是,这些通用性搜索引擎也存在着一定的局限性,如:(1)不同领域、不同背景的用户往往具有不同的检索目的和需求,通用搜索引擎所返回的结果包含大量用户不关心的网页。(2)通用搜索引擎的目标是尽可能大的网络覆盖率,有限的搜索引擎服务器资
2021-10-08
70
1.1Python的对象python的内置对象类型有很多,包括数字,字符串,列表,集合,元组,字典等等,在Python中,一切皆对象pickle腌制--在Python中,如果有一些对象需要持久性存储,并且不丢失这个对象的类型和数据,则需要将这些数据进行序列化,序列化之后,需要使用的时候,再恢复为原来的数据,序列化的过程成为pickle(腌制)Python内置的一种数据类型是列表:list。list是一种有序的集合。列表由一系列按特定顺序排列的元素组合。用 [ ] 来表示。list里面的元素的数据类型也可以
2021-10-08
52
装饰器()1、装饰器:本质是函数;装饰器(装饰其他函数),就是为其他函数添加附加功能;原则:1.不能修改被装饰函数的源代码; 2.不能修改被装饰的函数的调用方式;装饰器对被装饰的函数完全透明的,没有修改被装饰函数的代码和调用方式。实现装饰器知识储备:1.函数即“变量”;2.高阶函数;3.嵌套函数高阶函数+嵌套函数=》装饰器匿名函数(lambda表达式)>>> calc = lambda x:x
2021-10-08
43
利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:['adam', 'LISA', 'barT'],输出:['Adam', 'Lisa', 'Bart']。11 def cg(name):2 return name[0].upper()+name[1:].lower()3 L = ['adam', 'LISA', 'barT']4 print map(cg,L1)View Code编写一个prod()函数,可以接受一个list并利用reduce()求积。1