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题: ...
随机推荐
- 【设计模式】Java设计模式 - 适配器模式
[设计模式]Java设计模式 - 适配器模式 不断学习才是王道 继续踏上学习之路,学之分享笔记 总有一天我也能像各位大佬一样 原创作品,更多关注我CSDN: 一个有梦有戏的人 准备将博客园.CSDN一 ...
- MySQL 不同隔离级别,都使用了什么锁?
大家好,我是树哥. 在上篇文章,我们聊了「MySQL 啥时候会用表锁,啥时候用行锁」这个问题.在文章中,我们还留了一个问题,即:如果查询或更新时的数据特别多,是否从行锁会升级为表锁?此外,还有朋友留言 ...
- GreatSQL vs MySQL性能测试来了,速围观~
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 1.结论先行 无论ibp(innodb_buffer ...
- 助力培养高质量AI人才,璞公英乐学平台在日本深受好评!
璞公英乐学平台(原名"璞睿魔数")自进入日本市场以来,受到日本用户的广泛好评.近日,日本AI门户网站AIsmiley在发刊的杂志<AI人才育成指南>中对璞公英乐学平台做 ...
- 《Java基础——数组的定义与使用》
Java基础--数组的定义与使用 一. 一维数组: 格式一: 数组类型 数组变量[]=new 数据类型[长度]; //需要后续赋值,且后续赋值时只能为单个元素赋值. 或 数组类型 数组变量 ...
- Linux使用密钥登录SSH
输入命令和上传密钥时需要注意当前目录.账号和读写权限 生成密钥 使用服务器生成(方法一,推荐) 1.1生成密钥 #ssh-keygen(这里pwd为当前账号的home目录) 1.2下载密钥 .id_r ...
- getSessionFactory().openSession()导致druid连接池中的连接都占用满但无法回收
该问题产生的现象 页面刷新几次后,就卡住,线上就得需要重新部署(还好是测试环境,不是真正生产环境) 过程及原因 查看日志线程池满了 Caused by: org.springframework.jdb ...
- 配置 Containerd 在 harbor 私有仓库拉取镜像
官方文档地址:https://github.com/containerd/cri/blob/master/docs/registry.md 严格来说,这个具体可分为两部分 1.在k8s中使用Conta ...
- ProxySQL(10):读写分离方法论
文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9318558.html 不同类型的读写分离 数据库中间件最基本的功能就是实现读写分离,ProxySQL当然也支 ...
- 使用Prometheus和Grafana监控emqx集群
以 Prometheus为例: emqx_prometheus 支持将数据推送至 Pushgateway 中,然后再由 Promethues Server 拉取进行存储. 注意:emqx_promet ...