0%

1. 正则表达式到底是什么?

我们通常在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。

字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。

阅读全文 »

HTTP协议

  • HTML是一种用来定义网页的文本,会HTML,就可以编写网页;

  • HTTP是在网络上传输HTML的协议,用于浏览器和服务器的通信。

    阅读全文 »

1. 元类

  • 类也是对象
    在理解元类之前,我们需要掌握python中的类。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在python中这一点仍然成立:
>>> class Obj(object):
…       pass
…
>>> my_obj= Obj()
>>> print my_obj
<__main__.Obj obj at 0x8974f2c>
阅读全文 »

1. 简单协程

  • 概念:协程,又称为微线程,纤程,英文名Coroutine。协程的作用,是在执行函数A时,可以随时中断,去执行函数B,然后中断继续执行函数A(可以自由切换)。但这一过程并不是函数调用(没有调用语句),这一整个过程看似像多线程,然而协程只有一个线程执行。

简单实现协程:

阅读全文 »

1. 闭包

  • 说明:在一个函数中又定义了一个函数,并且内部函数可以引用外部函数的参数和局部变量,当外部函数返回内部函数时,相关参数和变量都保存在返回的函数中,这种称为闭包。

    阅读全文 »

1、迭代器

  • 定义:迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
  • 优点:迭代器的一大优点是不要求事先准备好整个迭代过程中所有元素。迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁。这个特点使得它特别适合用于遍历一些巨大的集合,比如几个G的文件。
  • 特点:

  • 访问者不需要关心迭代器内部的结构,仅需通过next()方法不断去取下一个内容。

  • 不能随机访问集合中的某个值,只能从头到尾依次访问。

    阅读全文 »

1. 认识网络编程

  • 网络编程从大的方面来讲就是对信息的发送到接收,中间传输为物理线路的作用。小的方面是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。

2. IP地址

一个IP地址就是一个32位无符号整数,IP地址通常是以一个称为点分十进制表示法来表示。每个字节由它的十进制值来表示,并且用句号(英文中的句号)和其它字节间分开。

  • A类:地址范围1.0.0.1 - 126.255.255.254 —-有126个网络
  • B类:地址范围128.1.0.1 - 191.255.255.254 —-有16384个网络
  • C类:地址范围192.0.1.1-233.255.255.254 —-有2097152个网络
  • D类:用于多点广播
  • 私有IP:10.0.0.0-10.255.255.255 , 172.16.0.0-172.31.255.255, 192.168.0.0-192.168.255.255(注意:IP地址127.0.0.1-127.255.255.255用于回路测试)

3. OSI模型与IP/TCP协议模型

  • OSI模型
    开放式系统互联通信参考模型(Open System Interconnection Reference Model)简称OSI模型,一种概念模型,由国际标准化组织(ISO)提出,一个试图使各种计算机在世界范围内互连为网络的标准框架。

    阅读全文 »

1. 多线程

  • 概念:简单地说操作系统可以同时执行多个不用程序。例如:一边用浏览器上网,一边在听音乐,一边在用笔记软件记笔记。

  • 并发:指的是任务数多余cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的熟度相当快,看上去一起执行而已)

  • 并行:指的是任务数小于等于CPU核数,即任务真的是一起执行的。

    阅读全文 »