python面试题常用语句
一、比较与交换
1.比较并输出大的
print(a if a>b else b)
2.交换两个元素
a,b = b,a
list1[i],list[j]=list1[j],list[i]
二、排序
1.字符串排序
s = 'aaccbgd'
print(''.join(sorted(list(s))))
2.数组排序
l = [4,5,2,3,9]
print(sorted(l)) #从小到大排序
print(sorted(l,reverse=True)) #从大到小排序
3.字典排序,转为列表
d = {3: 2, 2: 1, 1: 3}
l1 = sorted(d.items(),key=lambda x:x[0]) #根据key排序
l2 = sorted(d.items(),key=lambda x:x[1]) #根据value排序
三、转换
1.字符串-数组
s = 'abcde'
l = list(s)
2.数组-字符串
l = [1,2,4,4,3]
#s = str(l) #直转
s = ''.join([str(x) for x in l]) #使用join连接需转为string格式
3.字典-数组
d = {3: 2, 2: 1, 1: 3}
l1 = sorted(d.items(),key=lambda x:x[0]) #根据key排序
4 字典-数组,将两个列表分别转为字典的key与value
l = [1, 2, 4, 4, 3]
s = ['s', 'y', 'o', 'm', 'z']
d = dict(zip(l,s))
5.ip地址-32位整数
ip="192.168.1.1"
list_ip = list(map(int,ip.split(".")))
res = ""
for i in list_ip:
res += str("%08d" % (int(bin(i)[2:])))
print(int(res,2))
四、遍历(循环)
1.单层遍历数组for循环
value = 0
for i in range(100): # 累加1-100
value += i
print(value)
2.多层遍历数组for循环
l = [2,4,5,7,3,8,1,3]
n = len(l)
for i in range(n): #冒泡排序
for j in range(n-i-1):
if l[j] > l[j+1]:
l[j],l[j+1]=l[j+1],l[j]
3.while遍历数组
i = 1
while i <= 9: #打印99乘法表
a = 1 # 列数计数器
while a <= i:
print("%d * %d = %d" % (a, i, i * a), end="\t")
a += 1
print("")
i += 1
五、查找
1.字符串中查找第一个出现元素位置,无返回-1
print(s.find("a"))
2.列表中查找第一个出现的元素的位置,无报错
print(list1.index("hello"))
3.字段内查找对应的key的value,无返回第二个元素(可缺省)
print(dict1.get("k1"))
print(dict1.get("k1",0))
六、递归
def Fibonacci(n): #斐波那契数列
if n == 1 or n == 2:
return 1
elif n == 3:
return 2
else:
return Fibonacci(n - 1) + Fibonacci(n - 2)
七、语句简化
1.快速赋值/初始化
num,s,l,d = 0,"yes",[],{}
2.三目运算符
flag = True
print(1 if flag else -1)
3.列表推导式
x = [1,1,1]
y = [1,2,3]
z = [a+b for a in x for b in y] #返回各种相加的结果
q = [a+b for a,b in zip(x,y)] #返回对应下标相加的结果
4.lamda表达式
x = lambda i:i**2 #使用lambda简化函数内容
print(x(4))
d = {3: 2, 2: 1, 1: 3}
l1 = sorted(d.items(),key=lambda x:x[0]) #使用lamda指定排序的字段:根据key排序
l2 = sorted(d.items(),key=lambda x:x[1]) #使用lamda指定排序的字段:根据value排序
python面试题常用语句的更多相关文章
- python学习_常用语句
1.变量 1 name='hu qihang' #变量名应为英文,方便阅读 2 name_of_gf='chen ye' #多个单词用下划线隔开 3 名字='hu qihang' #变量名可以是中文 ...
- Python—常用语句 if for while
Python-常用语句 判断语句 循环语句 break语句和continue语句 判断语句: if语句是最简单的添加判断语句,它可以控制程序的执行流程. if结构: if条件: 要执行的操作 ... ...
- Python 常用语句
条件语句 a=input("请输入数字a的值:\n") a=int(a) #从控制台接收到的都是字符串类型,需要转换 if a==0: #也可以写成if(a==0): print( ...
- python公司面试题集锦 python面试题大全
问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...
- Python面试题汇总
原文:http://blog.csdn.net/jerry_1126/article/details/44023949 拿网络上关于Python的面试题汇总了,给出了自认为合理的答案,有些题目不错,可 ...
- 315道python面试题(参考答案)
第一部分 Python基础篇 1:为什么学习Python 家里有在这个IT圈子里面,也想让我接触这个圈子,然后给我建议学的Python, 然后自己通过百度和向有学过Python的同学了解了Python ...
- Python面试题之Python面试题汇总
在这篇文章中: Python基础篇 1:为什么学习Python 2:通过什么途径学习Python 3:谈谈对Python和其他语言的区别 Python的优势: 4:简述解释型和编译型编程语言 5:Py ...
- 315道Python面试题答案
目录 Python基础篇 1:为什么学习Python 2:通过什么途径学习Python 3:谈谈对Python和其他语言的区别 Python的优势: 4:简述解释型和编译型编程语言 5:Python的 ...
- 很全的 Python 面试题
很全的 Python 面试题 Python语言特性 1 Python的函数参数传递 看两个例子: Python 1 2 3 4 5 a = 1 def fun(a): ...
- 面试前赶紧看了5道Python Web面试题,Python面试题No17
目录 本面试题题库,由公号:非本科程序员 整理发布 第1题: Flask中的请求上下文和应用上下文是什么? 第2题:django中间件的使用? 第3题: django开发中数据做过什么优化? 第4题: ...
随机推荐
- v-if和v-for的优先级是什么?
一.作用 v-if 指令用于条件性地渲染一块内容.这块内容只会在指令的表达式返回 true值的时候被渲染 v-for 指令基于一个数组来渲染一个列表.v-for 指令需要使用 item in item ...
- MySQL 不同隔离级别,都使用了什么锁?
大家好,我是树哥. 在上篇文章,我们聊了「MySQL 啥时候会用表锁,啥时候用行锁」这个问题.在文章中,我们还留了一个问题,即:如果查询或更新时的数据特别多,是否从行锁会升级为表锁?此外,还有朋友留言 ...
- 引擎之旅 Chapter.1 高分辨率时钟
目录 游戏中的时间线 真实时间线 游戏时间线 全局时钟的实现方式 我们如何理解时间.在现实生活中,时间就是一个有方向的直线.从一个无穷远到另一个无穷远.用数学去抽象地思考,它就是一个从无穷小到无穷大的 ...
- Redis变慢?深入浅出Redis性能诊断系列文章(一)
(本文首发于"数据库架构师"公号,订阅"数据库架构师"公号,一起学习数据库技术) Redis 作为一款业内使用率最高的内存数据库,其拥有非常高的性能,单节点 ...
- [C/C++]C语言-踩坑记录
很久没写C语言的代码,发现很多小细节,记下来备查. 0. C语言常规头文件 #include <stdlib.h> #include <stdio.h> 1. 二维数组的开辟和 ...
- Kubernetes 多租户:多租户介绍
多租户集群由多个用户和/或工作负载共享,这些用户和/或工作负载被称为"租户".多租户集群的运营方必须将租户彼此隔离,以最大限度地减少被盗用的租户或恶意租户可能对集群和其他租户造成的 ...
- 分步骤讲解Deployment故障排除
背景假设 当你希望在Kubernetes中部署应用程序时,你通常会定义三个组件: 一个Deployment - 这是一份用于创建你的应用程序的Pod副本的"食谱": 一个Servi ...
- 【Java】 DirectByteBuffer堆外内存回收
PhantomReference虚引用 在分析堆外内存回收之前,先了解下PhantomReference虚引用. PhantomReference需要与ReferenceQueue引用队列结合使用,在 ...
- MYSQL-->InnoDB引擎底层原理
逻辑存储结构 逻辑存储结构图 表空间 表空间文件在Linux下存放在 /var/lib/mysql文件中的 xxx.ibd 文件就是表空间文件 表空间文件用来存储,记录,索引等数据. 段 段分为,数据 ...
- Java学习之路:流程控制
2022-10-11 10:58:41 前言 本文开始流程控制方面的学习,主要包括用户交互和流程控制语句,适合新手学习. 1 用户交互Scanner 1.1 Scanner对象 Java提供了一个可以 ...