首页 > 代码库 > python-day4

python-day4

1.光纤--物理连接介质,和网线一样。

2.以太网的工作方式: 广播

3.IP地址形式:点分十进制

4.Ip+子网掩码(暗位语运算),算出网络地址

5.网关与网关走的是路由协议

6.Arp协议:先分析两台机器的网络地址是否一样--判断是否在一个局域网,通过ip地址找到mac地址。再次发送时就指定目标mac地址发送(交换机学习)。

7.一台机器要和另外一台机器通信,首先要知道对方机器的IP地址,arp协议通过IP地址和子网掩码判断两台机器是否在一个局域网内,如果在一个局域网内将通过arp协议获得另外一台机器的mac地址,然后通过以太网协议进行通信;交换机已知mac地址后,再次发送时就会指定目标mac地址发送(交换机学习),不再采用广播形式;如果判断不在一个局域网内,首先要把数据包发给网关,那就要知道网关的IP地址和子网掩码,通过arp协议获取网关的mac,再通过以太网协议将数据包发给另一个网关。

8.服务端与客户端通信:  要明确知道客户端在哪=》通过IP地址找到客户端再哪个子网=》通过mac地址找到客户端在子网的具体位置

9.传输层:tcp/udp协议 ,端口号0-65535(操作系统占用0-1024)    =ip+mac+端口确定位软件位置

10.软件与软件通信:通过IP地址找到客户端在哪个子网=》通过mac地址找到客户端在子网的具体位置=》通过端口号确定软件的具体位置

 

总结: ip+mac地址可以定位任何一台机器

      =ip+mac+端口可以确定任何一个软件

      =ip+端口可以确定任何一个软件

 

11.文件后缀名对python运行没关系

12.Python解释器执行python程序的过程:python3 C:\test.py

1)启动python解释器(内存中)

2)将C:\test.py内容从硬盘读入内存(这一步与文本编辑器是一样的)

3)执行读入内存的代码

13.如果想要永久保存代码,就要用文件的方式

如果想要调试代码,就要用交互式的方式

14.变量

变量是什么?

     一个是变:核心在于变化

     一个是量:衡量,计量,表达是一种状态

变量的定义 变量名+赋值+变量值

eg:   level=0

level=1

 

name=’alex’

name=’alexSB

变量定义规则:

1.变量名只能是 字母、数字或下划线的任意组合

2.变量名的第一个字符不能是数字

3.以下关键字不能声明为变量名[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘, ‘yield‘]

定义方式

驼峰体

AgeOfOldboy = 56

NumberOfStudents = 80

下划线

age_of_oldboy = 56

number_of_students = 80

 

变量的修改:

name=’alexSB’    #’alexSB’这个值的引用计数+1

name=’alexDaSB’  #’alexDaSB’这个值的引用计数+1’alexSB’这个值的引用计数-1

 技术分享

 

定义一个变量,储存的数据是变量值

变量名与变量值是一种绑定关系

变量名本身并没有储存值的功能

 

变量值的引用计数或者说变量值身上绑定的变量名为0个,这时python解释器就会定期回收他们

 

扩充内容:

name=’alexDaSB’

name1=name

技术分享 

变量定义的三个重要组成部分:

     Idtypevalue

 

 eg:

>>>Name=’alexDaSB’

>>>id(name)

41999664

>>>type(name)

<class’str’>

>>>name

’alexDaSB’

>>>

>>>

>>>name1=name

>>>id(name1)

>>>41999664

>>>type(name1)

<class’str’>

>>>name1

’alexDaSB’

 

只要id一样,其他的typevalue都一样

 

身份运算符:

>>> name1 is name

True

   is比较的是id,只要id一样其他部分都一样

扩展出python特性:小数池   长度不是很长的数字都在小数池内,池内id都是一样的

例如1

>>>age1=10

>>>age2=10

>>>

>>>id(age1)

1654240608

>>>type(age1)

<class’int’>

>>>age1

10

>>>

>>>id(age2)

1654240608

>>>type(age2)

<class’int’>

>>>age2

10

 

 

例如2

age1=1234567890123456789

age2=1234567890123456789

>>>

>>>id(age1)

41864328

>>>type(age1)

<class’int’>

>>>age1

1234567890123456789

>>>

>>>id(age2)

41864368

>>>type(age2)

<class’int’>

>>>age2

1234567890123456789

>>>age1 is age2

False

>>>age1 == age2

True

 

15.常量:不变的量

python中没有专门的定义, AGE_OF_OLDBOY_=50 通常用大写的方式来表达常量,仅仅是

一种提示效果

 

16.程序交互:

例如:name = input("What is your name?")

age = input("How old are you?")

hometown = input("Where is your hometown?")

 

print("Hello ",name , "your are ", age , "years old, you came from",hometown)

 

17.代码注释原则:

不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可

注释可以用中文或英文,但绝对不要拼音噢

python-day4