-
为什么学习Python?
1.1 python语言相对贴近人类语言,上手容易
1.2 相比c语言,它有一个解释器界面,可以实时的,对话式的写一些东西,马上得到反馈,
1.3 社区健康,可以快速的得到一个解决方案
1.4 发育良好,越来越多的人用python,
1.5 后续发展健康不论是游戏,大数据,人工智能都有其一席之地 -
通过什么途径学习的Python?
2.1网上视频学习为主,
2.2 在论坛交流为辅 -
Python和Java、PHP、C、C#、C++等其他语言的对比?
3.1 只学过c和python,感觉就是c好好使用需要更多的知识, -
简述解释型和编译型编程语言?
1 解释型语言写的程序每执行一次都要翻译一次
2 编译型语言会将程序翻译好,之后执行都直接读入机器可读的二进制机器码 -
Python解释器种类以及特点?
5.1 cpython 就是我们最常用的,
5.2 ipython 是一个交互更加人性化的解释器
5.3 jpython 是python程序能在java虚拟机中运行
5.4 Ironpython 使python程序能在.net环境下运行
5.4 pypy 使用jit技术,使python程序能更快运行,但是不能保证执行结果和cpython解释器执行结果一样,有一些第三方库也不一定支持 -
位和字节的关系?
6.1 位 bit
6.2 字节 Byte
6.3 8*bit=1*Byte -
b、B、KB、MB、GB 的关系?
等比关系 1:8:8*1024:8*(1024**2):8*(1024**3):8*(1024**4) -
请至少列举5个 PEP8 规范(越多越好)。
8.1 缩进使用4个空格
8.2 每行最长行宽79,或在一个团队内使用80~100
8.3 import通常使分开的
8.4 定义字符串的时候,使用统一的"",或''
8.5 保持命名风格的一致性和可读性
更多参考 - 通过代码实现如下转换:
二进制转换成十进制:v = “0b1111011”
十进制转换成二进制:v = 18
八进制转换成十进制:v = “011”
十进制转换成八进制:v = 30
十六进制转换成十进制:v = “0x12”
十进制转换成十六进制:v = 87import re def b2ten(num): num_use=num[2::] num_list=re.findall(r'w',num_use)[::-1] num_int=0 for i in range(len(num_list)): num_int+=int(num_list[i])*(2**(i)) return num_int print(b2ten('0b11111011'))
同理,16进制转十进制以及8进制转十进制,
1 先判断这个数的进制类型
2 去掉进制标识符
3 反转这个数
4 按照其进制,取每位数代表的值,及索引,然后值乘以进位数的索引值次方,再累加即可。比如16进制0x78,=8*(16**0)+7*(16*1)=120
十进制转其他进制只是反其道而行之,只是多一步,转换成字符串 -
请编写一个函数实现将IP地址转换成一个整数。
如 10.3.9.12 转换规则为:
10 00001010
3 00000011
9 00001001
12 00001100
再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?
这个题目是上一题的应用, 1 由上一题的基础,先把十进制数转成二进制字符串, 2 将其拼接 3 由二进制字符串转成十进制数