python高频面试题

在D盘根目录下创建一个文本文件test.txt,并向其中写入字符串hello world
# 方法1:
file_test = open('./output/a.txt','w',encoding='utf8')
file_test.write('hello world')
file_test.close()# 方法2: 该方式会在不需要使用该文件的时候自动关闭, 不需要手动close关闭资源
with open('./output/b.txt','a',encoding='utf8') as fp:# 输出方式1:fp.write('hello world')# 输出方式2:print("hello world",file=fp)
写出下面代码的优化版本,提高运行效率。

x = list(range(500))
for item in x:
​ t = 5**5
​ print(item+t)

t = 5 ** 5
x = list(range(500))
for item in x:print(item+t)
print(end-start)
生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变。(提示:使用切片。)
"""
@Project :python
@File    :py_01.py
@IDE     :PyCharm
@Author  :wrx
@Date    :2023/7/6 14:16
@describe:编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素不变。
"""
import random#方法1
# 获取随机列表
a = []
for i in range(20):a.append(random.randint(0,100))
print(a)b = a[::2]
for i in range(20):if i%2 == 0:a[i] = max(b)b.remove(max(b))
print(a)# 方法2:
y = a[::2]
y.sort(reverse=True)
a[::2] = y
print(a)
写出下面代码的执行结果
def Join(List, sep=None):return (sep or ',').join(List)
print(Join(['a', 'b', 'c']))
print(Join(['a', 'b', 'c'],':'))a,b,c
a:b:c
def Sum(a, b=3, c=5):return sum([a, b, c])
print(Sum(a=8, c=2))
print(Sum(8))
print(Sum(8,2))
8+3+2 13
8+3+5 16
8+2+5 15
def Sum(*p):return sum(p)
print(Sum(3, 5, 8))
print(Sum(8))
print(Sum(8, 2, 10))
3+5+8 16
8
8+2+10 20
判断一个数字是否为素数,是则返回字符串YES,否则返回字符串NO。
# 方法1:
def if_sushu():try:a = int(input('请随机输入一个数字:'))except Exception as e:print(f'出现了格式转化错误:{e},请输入正确格式')else:if a <= 1:return 'NO'elif a == 2:return 'Yes'else:for i in range(2,int(a/2+1)):if a % i == 0:return 'NO'else:return 'Yes'
# 方法2:
import math
def IsPrime(v):# sqrt返回该值最大的平方值  例如 8 为 2  而 9 为 3n = int(math.sqrt(v)+1)print(n)for i in range(2,n):if v%i==0:return 'No'else:return 'Yes'if __name__ == '__main__':# print(if_sushu())print(IsPrime(9))
模拟Python内置函数sorted()
import random
import copyls = [random.randint(1,20)for i in range(5)]
print(ls)# 创建临时表 不能损害原始数据
# ls_tmp = ls[::]
ls_tmp = copy.deepcopy(ls)sort_ls = []for i in range(5):max_num = 0for i in ls_tmp:if max_num < i:max_num = ielse:sort_ls.append(max_num)ls_tmp.remove(max_num)
print(ls)
print(sort_ls)
按行读取文件的方式
file = open('./a.txt','r',encoding='utf8')
for i in file:print(i,end='')print()
file.seek(0)text = file.readlines()
for j in text:print(j,end='')
生成包含20个随机数的列表,然后将前10个元素升序排列,后10个元素降序排列,并输出结果
import randomls = [random.randint(1,50) for i in range(20)]
print(ls)
for j in range(9):# 前十个升序for i in range(j+1,10):if ls[j] > ls[i]:ls[j],ls[i] = ls[i],ls[j]# 后十个降序for i in range(j+11,20):if ls[j+10] < ls[i]:ls[j+10],ls[i] = ls[i],ls[j+10]print(ls)# 简单方法
y = ls[0:10]
y.sort()
ls[0:10] = y
y = ls[10:20]
y.sort(reverse=True)
ls[10:20] = yprint(ls)
运行后用户输入4位整数作为年份,判断其是否为闰年。如果年份能被400整除,则为闰年;如果年份能被4整除但不能被100整除也为闰年
try:year = int(input('请输入一个四位年份:'))
except:print('请输入整数')
else:if len(str(year)) != 4:print("请输入4位整数")
# 判断是否是闰年if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):print('是闰年')else:print('不是闰年')
python分段函数
num = eval(input('请输入一个数字:'))
y = 0
if num < 0 or num>=20:y = 0
elif num < 5:y = num
elif num < 10:y = 3 * num - 5
else:y = 0.5 * num - 2
print(y)
统计 列表中数字的个数
"""
@describe: 统计 列表中数字的个数
dict[key] 和 dict.get(key,default) 的区别
都能返回key的value值,但是区别是 前者如果key不存在报错, 而后者key不存在返回默认值default
items 返回的结果是列表嵌套元组
"""
import randomx = [random.randint(1, 2) for i in range(5)]
r = dict()
for i in x:r[i] = r.get(i, 0) + 1print(r)
for k, v in r.items():print(k, v)
假设有Python程序文件demo.py
def main():if __name__ == '__main__':print(1)
else:print(2)main()将该程序文件直接运行时输出结果为_________,作为模块导入时得到结果___________-。(12
下面程序的执行结果
s = 0
for i in range(1,101):s += i
else:print(1)1s = 0
for i in range(1,101):s += iif i == 50:print(s)break
else:print(1)
1275from random import randintresult = set()
while True:result.add(randint(1,10))if len(result)==20:break
print(result)无法正确执行,因为该程序的功能是从[1,10]区间中选择20个不同的随机整数,而该区间并没有这么多整数,所以程序死循环。x = list(range(20)) 
for i in range(len(x)):del x[i]无法正确执行,因为删除列表元素时会影响其他元素在列表中的索引,上面的代码会抛出下标越界的异常。def demo(*p):return sum(p)
print(demo(1,2,3,4,5))
print(demo(1,2,3))15
6def demo(a, b, c=3, d=100):return sum((a,b,c,d))
print(demo(1, 2, 3, 4))
print(demo(1, 2, d=3))10
9def demo():x = 5
x = 3
demo()
print(x)3def demo(lst, k):if k<len(lst):return lst[k:]+lst[:k]
阅读一下代码, 解释其功能
# enumerate(iteration, start)
# iteration:可遍历的对象,如列表、元组、字符串等。
# start:用来指定索引的起始数值,默认为0。
# enumerate函数的返回值有两个,第一个是索引,第二个是iteration参数中的值
x = list(range(20)) 
for index, value in enumerate(x):if value == 3:x[index] = 5将列表x中值为3的元素修改为5import string 
x = string.ascii_letters + string.digits
import random
print(''.join(random.sample(x, 10)))random.sample(x, 10) 随机从小写字母和大写字母中选取10个返回列表
join  将列表中的值以''为字符串连接字符连接列表中的每个元素形成字符串
答: 输出由英文字母大小写或数字组成的长度为10且不重复的随机字符串。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/53558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka面试

文章内容转自: 华仔聊技术(Kafka 面试连环炮) 目录 一.初级 1.Kafka核心组件图 2.在 Kafka 中 Zookeeper 作用是什么? 3.生产者有哪些发消息的模式? 4.Kafka 如何合理设置分区数,越多越好吗? Kafka 如何合理设置分区数 分区设置越多越好吗? 5.如何保证 Kafka 中的…

【后端】Core框架版本和发布时间以及.net 6.0启动文件的结构

2023年&#xff0c;第35周&#xff0c;第1篇文章。给自己一个目标&#xff0c;然后坚持总会有收货&#xff0c;不信你试试&#xff01; .NET Core 是一个跨平台的开源框架&#xff0c;用于构建现代化的应用程序。它在不同版本中有一些重要的区别和发布时间 目录 一、Core版本和…

爬虫:绕过5秒盾Cloudflare和DDoS-GUARD

本文章仅供技术研究参考&#xff0c;勿做它用&#xff01; 5秒盾的特点 <title>Just a moment...</title> 返回的页面中不是目标数据&#xff0c;而是包含上面的代码&#xff1a;Just a moment... 或者第一次打开网页的时候&#xff1a; 这几个特征就是被Cloud…

【QT】绘制旋转等待

很高兴在雪易的CSDN遇见你 ,给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 程序中经常会遇到耗时的操作,需要提供等待的窗口,防止用户多次点击造成卡顿等问题。本文分享旋转等待技术,希望对各位小伙伴有所帮助!结果如下:

Unity 之transform.LookAt() 调整一个物体的旋转,使其朝向指定的位置

文章目录 总的介绍补充&#xff08;用于摄像机跟随的场景&#xff09; 总的介绍 transform.LookAt 是 Unity 引擎中 Transform 组件的一个方法&#xff0c;用于调整一个物体的旋转&#xff0c;使其朝向指定的位置。通常情况下&#xff0c;它被用来使一个物体&#xff08;如摄像…

一篇文章搞定《玩转WebView》

一篇文章搞定《玩转WebView》 前言WebView的常见方法WebView的状态相关方法WebView的前进和后退WebView的缓存 WebView常用的子类WebSettings类WebViewClient类WebChromeClient类 WebView和JavaScript的交互JS调用Android通过 WebView 的addJavascriptInterface()进行对象映射通…

盘点 2023 十大免费开源 WAF

WAF 是 Web Application Firewall 的缩写&#xff0c;也被称为 Web 应用防火墙。区别于传统防火墙&#xff0c;WAF 工作在应用层&#xff0c;对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果&#xff0c;使其免于受到黑客的攻击。 近几年经济增速开始放缓&#xff0c;科…

ajax和fetch的区别

ajax 和 fetch的相同点和区别是什么&#xff1f; 以前我们都用ajax去做请求&#xff0c; 但是原生的ajax不好用&#xff0c;我们会用$.ajax或者axios插件去请求&#xff0c;他们都是ajax的封装 最近出来个fetch是什么&#xff1f; 问到这里的时候&#xff0c;你就已经入坑了&am…

redisson参数配置

文章目录 pom配置链接配置建议 pom <!-- 引入spring-data-redis组件 --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><exclusions><!-- 因springboot2.x…

【Go 基础篇】Go语言 init函数详解:包的初始化与应用

介绍 在Go语言中&#xff0c;init() 函数是一种特殊的函数&#xff0c;用于在包被导入时执行一次性的初始化操作。init() 函数不需要手动调用&#xff0c;而是在包被导入时自动执行。这使得我们可以在包导入时完成一些必要的初始化工作&#xff0c;确保包的使用具有正确的环境…

基于Java+SpringBoot+vue前后端分离可盈保险合同管理系统设计实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

交互设计原则是什么 优漫动游

可能很多人都忘了&#xff0c;在互联网发展早期&#xff0c;很多网站的交互设计其实非常简单。往往一个翻页效果、一个简短的动画就能吸引到很多用户。而如今随着互联网的不断更新迭代&#xff0c;技术不断革新&#xff0c;网站交互也得到了很大程度的加强&#xff0c;可以说当…

【Unity的HDRP渲染管线下用Steam VR串流结合使用遇到的各种问题_SteamVR 插件和Pico串流助手】

用Steam串流VR 背景:1.项目准备:相关文档和社区资源需要下载的工具2.梳理工程渲染设置和场景烘培正确:几个概念的一些说明:1. SteamVR:2. SteamVR插件:3. OpenVR和OpenXR:4. XRI:5. Pico串流助手:6. "Mock Runtime"选项含义SteamVR插件导入配置好SteamVR Came…

SpingMVC拦截器-用户登录权限控制分析

视频链接&#xff1a;08-SpringMVC拦截器-用户登录权限控制代码实现2_哔哩哔哩_bilibili 114 1、做了一个用户跟角色添加的相关操作 1.1 这个后台工程&#xff0c;没有进行相关操作也能够进行登录&#xff1a; 2、现在我做一个用户的权限控制&#xff0c;如果当前我没有进行操…

【vue3.0中ref与reactive的区别及使用】

什么是ref与reactive ref与reactive都是Vue3.0中新增的API&#xff0c;用于响应式数据的处理。 1. ref ref是一个函数&#xff0c;可以用于将一个普通的数据类型转换成响应式数据。ref返回一个包含value属性的对象&#xff0c;通过修改value属性的值&#xff0c;可以触发组件…

解决Springboot创建工程时,pom.xml文件中的插件spring-boot-maven-plugin报红

在初始创建工程完成之后&#xff0c;发现pom文件中有错误 spring-boot-maven-plugin这一行会报红 解决办法&#xff1a;在代码中添加版本信息 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-…

Mybatis的综合案例-学生信息查询系统 用于校验是否真正学习掌握了动态SQL

Mybatis的综合案例-学生信息查询系统 需求一&#xff1a;当用户输入的学生姓名不为空&#xff0c;则只根据学生信息进行查询; 当用户输入的学生姓名为空&#xff0c;且专业不为空&#xff0c;那么就根据学生专业进行学生的查询 需求二&#xff1a;查询所有id值小于5的学生信息…

git常用操作命令(不定时更新)

git常用操作命令 将某个分支的某次提交迁移到另外一个分支查询这次提交的ID号方法一方法二 切换到目标分支执行commitID合并指令 将某个分支的某次提交迁移到另外一个分支 查询这次提交的ID号 方法一 方法二 切换到目标分支 git checkout 目标分支名 执行commitID合并指令 gi…

Dataset类实践

Dataset类实践 蚂蚁蜜蜂分类数据集和下载链接https://download.pytorch.org/tutorial/hymenoptera_data.zip Dataset&#xff1a;提供一种方式去获取数据及其lable Q&#xff1a;如何获取每个数据及其lable 重写构造方法和获取标签方法 Q&#xff1a;告诉我们总共有多少数据 …

leetcode739. 每日温度 单调栈

自己思路&#xff1a; 想到用两个栈&#xff0c;一个维护元素、另一个维护下标。但是还是无法处理有重复元素的问题&#xff08;用哈希表来存储的时候&#xff09;。所以就看了答案的思路。 答案思路&#xff1a; 从前往后遍历&#xff0c;维护一个单调栈。栈存放数组的下标。…