1、请至少列举5个 PEP8 规范(越多越好)。

一、代码编排

1、缩进。4个空格的缩进,不使用Tap,更不能混合使用Tap和空格

2、每行最大长度79,换行可以使用反斜杠,最好使用圆括号。换行点要在操作符的后边敲回车

二、文档编排

1、不要在一句import中多个库,比如import 欧式,sys

三、空格的使用

总体原则,避免不必要的空格

四、注释

1、总体原则,错误的注释不如没有注释,当一段代码发生变化时,第一件事就是要修改注释!

2、注释必须使用英文,最好是完整的句子,首字母要大写的。

3、避免无谓的注释

五、命名规范

类的方法第一个参数必须是self,而静态方法第一个参数必须是cls

遵循python的变量的命名规范。

六、编码建议

1、编码中考虑是他python实现的效率等问题,比如运算符‘+’在Jpython中效率却非常低,采用。join()的方式

2、字符串不要以空格收尾

3、使用startwith() and endswith() 代替切片进行序列前缀或后缀的检查

4、使用isinstance()比较对象的类型:

5、判断序列空与不空,if not 条件,优于if 条件

2、通过代码实现如下转换:
二进制转换成十进制:v = “0b1111011”


int(v,2)     
十进制转换成二进制:v = 18


bin(v)
八进制转换成十进制:v = “011”


int(v,8)
十进制转换成八进制:v = 30


oct(v)
十六进制转换成十进制:v = “0x12”


int(v,16)

十进制转换成十六进制:v = 87

hex(v)

3、python递归的最大层数?

在pycharm中 递归的最大层数是1000次,无限制的递归调用自己是没有意义的

1、递归必须要有一个明确的结束条件

2、每次进入更深一层递归时,问题规模相比上次递归都有应有所减少

3、递归效率不高,递归层次过多会导致栈溢出

import sys
sys.setrecursionlimit(递归的最大次数)

4、求结果:
v1 = 1 or 3


1
v2 = 1 and 3


3
v3 = 0 and 2 and 1

0

 v4 = 0 and 2 or 1

1

 v5 = 0 and 2 or 1 or 4

1


 v6 = 0 or Flase and 1

1

详细过程可以点击这里:https://www.cnblogs.com/ManyQian/p/9216815.html

5、ascii、unicode、utf-8、gbk 区别?

ascii  :   8bit=1bytes,一个英文字符占用1个字节  范围基本只有英文字母、数字和一些特殊字符,只有256个字符

gbk 编码汉字的: 16bit=2bytes  2个字节表示一个中文字节,1个字节表示英文字节

unicode全世界的所有字节(内存中固定的编码):16bit=2bytes,2个字节表示一个字符,中文也是2个字节

utf-8万国码:1字节表示一个英文字符,3bytes表示一个中文字符

6、字节码和机器码的区别?

字节码是一种中间码和二进制代码(文件),需要直译器转译后成为机器码

字节码:字节码通常指的是已经经过编译的源码,字节码的实现方式是通过编译器和虚拟机器

机器码:机器语言是一种指令集的体系,这种指令集就是机器码,是电脑cpu可以直接解读的数据

计算机可以直接执行,并且执行速度最快的代码

解释性语言:程序---》字节码-----》机器码  根据具体系统在编译为机器语言

编译型语言:程序----》机器码

7、三元运算规则以及应用场景?

三元运算符的功能与‘if ...else’流程语句一致,它在一行中书写,代码非常精练,执行效率更高

嵌套使用的三元运算符可读性不太好,日后对代码的维护极可能存在问题

8、列举 Python2和Python3的区别?

1、print被视为一个语句而不是一个函数

2、整数的除法,2.7不直观

3、支持Unicode 2.7默认ASCII  3中默认Unicode

4、后续发展  2.7官方没有后续支持,3才是正统

python3-开发面试题(python)6.23基础篇(2)的更多相关文章

  1. python3 开发面试题(collections中的Counter)6.7

    ''' 编写Python脚本,分析xx.log文件,按域名统计访问次数 xx.log文件内容如下: https://www.sogo.com/ale.html https://www.qq.com/3 ...

  2. python3 开发面试题(面向对象)6.6

    """ 封装.继承.多态 1. 谈谈你对面向对象的理解? 2. Python面向对象中的继承有什么特点? 3. 面向对象深度优先和广度优先是什么? 4. 面向对象中sup ...

  3. python3 开发面试题(常用模块以及第三方库)6.5

    """ 1. os和sys都是干什么的? 2. 你工作中都用过哪些内置模块? 3. 有没有用过functools模块? """ #sys模块 ...

  4. python3 开发面试题(字典和拷贝)5.30

    """ 问:执行完下面的代码后, l,m的内容分别是什么? """ def func(m): for k,v in m.items(): m ...

  5. python3 开发面试题(创建表结构)6.9

    纯sql语句写出: '''设计 图书管理系统 表结构: - 书 - 书名 - 作者 - 姓名 - 出版社 - 出版社名称 - 地址 一本书只能由一家出版社出版 --> 多对一(书对出版社) 一本 ...

  6. python3 开发面试题(装饰器必须考)6.4

    def f(): print("2018-06-04") # 每次调用f的时候 在打印"2018-06-04" 之前打印一句 开始, 之后再打印一句 结束 de ...

  7. python3 开发面试题(去重保持原来的顺序)6.2

    """ l1 = [11, 2, 3, 22, 2, 4, 11, 3] 去重并保持原来的顺序 """ #方式一 for 循环方法 l1 = ...

  8. python3 开发面试题(%s和format的区别)5.31

    在格式化字符串中有两种方法: 1.%s 2.format 大家常用的是哪一种方法?为什么要用你选的这种方法? 我们先看一个例子: 首先我们定义一个我军需要击杀的恐怖分子的地理坐标为 c=(128,12 ...

  9. python3 开发面试题(生成列表)6.1

    话不多说直接上题: 生成如下列表: [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8], [0, 3, 6, 9, 12]] # 方式一 list1 ...

  10. 前端开发面试题总结之——JAVASCRIPT(一)

    ___________________________________________________________________________________ 相关知识点 数据类型.运算.对象 ...

随机推荐

  1. 使用T4模板生成MySql数据库实体类

    注:本文系作者原创,但可随意转载. 现在呆的公司使用的数据库几乎都是MySQL.编程方式DatabaseFirst.即先写数据库设计,表设计按照规范好的文档写进EXCEL里,然后用公司的宏,生成建表脚 ...

  2. canvas压缩图片变模糊问题

    canvas 画图图片变模糊问题 问题描述 在使用 canvas 对图片进行编辑导出图片之后发现图片和原图相比变得模糊了 canvas 画图线条变粗 问题产生原因 该问题在 PC 下面并不会产生,原因 ...

  3. Spring MVC 参数校验

    转自:http://blog.csdn.net/eson_15/article/details/51725470 这一篇博文主要总结一下springmvc中对数据的校验.在实际中,通常使用较多是前端的 ...

  4. VR行业纷纷倒闭:有硬件没内容

    从去年年底开始,VR就成为了一个流行词汇,不仅是巨头公司砸钱布局,众多创业公司也纷纷投入其中.但是,一窝蜂拥入的企业基本都没有成熟的商业模式和赢利模式,只能靠融资供血.在资本寒冬中,大部分的VR企业开 ...

  5. 02-导航实例-storyboard实现

        源代码下载链接:02-导航实例-storyboard实现.zip38.5 KB // MJAboutViewController.h // //  MJAboutViewController. ...

  6. [bzoj3343]教主的魔法——分块

    Brief description 给定一个数列,您需要支持一下两种操作: 给[l,r]同加一个数 询问[l,r]中有多少数字大于或等于v Algorithm analyse 这个题一时想不到什么有效 ...

  7. Nexus 5 Change FireFox OS to android

    1.Enter Fastboot mode,flash recovery: D:\BaiduYunDownload\recovery>fastboot flash recovery 6.0.4. ...

  8. EL表达式中获取list长度(JSTL函数用法)

    在jsp页面中不能通过${list.size}取列表长度,而是 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" pref ...

  9. 百度面试题——top K算法

    需求 从一亿个数据中,找出其中最小的10个数. 分析 最笨的方法就是将这一亿个数据,按从小到大进行排序,然后取前10个.这样的话,即使使用时间复杂度为nlogn的快排或堆排,由于元素会频繁的移动,效率 ...

  10. c 語言 控制碼

    source code #include <stdio.h> int main() { char *test = "ABC\x41\n"; printf("s ...