网络与多任务基础知识

网络与多任务基础知识

简述 OSI 七层协议

1、物理层

主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。

2、数据链路层

定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。

3、网络层

在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择。Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层。

4、[……]

继续阅读

Python基础知识总结

Python基础知识总结

简述解释型和编译型编程语言?

  • 解释型:代码编译后可以直接运行需要解释器将代码翻译成机器码
  • 编译型:代码编写完成后会有一个编译后的过程,生成可执行文件。然后运行编译好的机器码。

Python解释器种类以及特点?

Python 解释器的版本

我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。

CPython

官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

CPython是使用最广的Pytho[……]

继续阅读

Python 面试题篇4

Python 面试题篇4

Python 面试题篇3

python中什么元素为假?

(0,空字符串,空列表、空字典、空元组、None, False)

简述any()和all()方法

代码:

a = [True,False,True]
print(all(a))
print(any(a))
#False
#True

提示:
any():只要迭代器中有一个元素为真就为真

all():迭代器中所有的判断项返回都是真,结果才为真

IOError、AttributeError、ImportError、IndentationError、IndexError、KeyError、SyntaxError、NameError分别代表什么[……]

继续阅读

Python 面试题篇3

Python 面试题篇3

Python 面试题篇3

两个列表[1,5,7,9]和[2,2,6,8]合并为[1,2,2,3,6,7,8,9]

方法:使用extend函数
代码:

list1 = [1,5,7,9]
list2 = [2,2,6,8]
list1.extend(list2)
list1.sort()
print(list1)
#[1, 2, 2, 5, 6, 7, 8, 9]

x="abc",y="def",z=["d","e","f"],分别求出x.join(y)和x.join(z)返回的结果

代码:

x[......]

继续阅读

Python 面试题篇2

Python 面试题篇2

Python 面试题篇2

列出python中可变数据类型和不可变数据类型,并简述原理

不可变数据类型:数值型、字符串型string和元组tuple
可变数据类型:列表list和字典dict;

提示:

这里所说的可变与不可变是说的内存层面的性质,不可变就是需要在内存上新申请空间。

不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象(一个地址),可以使用id(变量名)的方法可以打印对象的id

允许变量的值发生变化,即如果对变量进行append、+=等这种操作后,只是改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过[……]

继续阅读

Python 面试题篇1

Python 面试题篇1

本文内容大部分来自网络 并结合自己理解编写整理

Python 面试题篇1

一行代码实现1–100之和

方法 :利用sum()函数求和

代码:

sum(range(1,101)

提示:

  • range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。
  • start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
  • step:步长,默认为1。例如:range(0, 5) 等价于 r[……]

    继续阅读

利用sqlalchemy 查询视图

利用sqlalchemy 查询视图

这个问题 google 百度 中英文搜了一上午。最新的回答还是 7年前。最后自己靠着官方文档的自己改出来一个比较方便的方法

使用环境

  • python == 3.7.0
  • SQLAlchemy === 1.2.14
  • sqlacodegen === 2.0.1

生成视图对应的ORM类

首先对于已经有数据表的项目来说可以使用sqlacodegen来快速构建表对应的类命令如下

sqlacodegen --noviews --noconstraints --outfile=/root/models.py mssql+pymssql://sa:123456@locahost/test?charset=ut[......]

继续阅读

水平居中的实现

水平居中的实现

通过flex布局来实现水平垂直居中

在父元素上设置居中
WX20190612-204443@2x.png

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>demo</title>
  <style>
    *{
      margin: 0;[......]

继续阅读

常见的css布局

常见的css布局

两列布局

QQ20190607-214953@2x.png

float方式

两列布局是一侧固定,另一侧自适应。一般一个浮动,另一个设置margin,或者一个绝对定位,另一个设置margin

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>demo</title>
  &l[......]

继续阅读

常见算法知识 一

常见算法知识 一

常用排序

名称|复杂度|说明|备注
—|—|—|—
冒泡排序Bubble Sort| O(NN)|将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮|
插入排序Insertion sort | O(N
N)|逐一取出元素,在已经排序的元素序列中从后向前扫描,放到适当的位置|起初,已经排序的元素序列为空
选择排序|O(N*N)|首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到排序序列末尾。以此递归。|
快速排序Quick Sort|O(n *log2(n))|先选择中间值,然后把比它小的放在左边,大的[……]

继续阅读