当前位置: 首页 > news >正文

python基础(16面试题附答案一)

python系列文章目录

python基础(01变量&数据类型&运算符)
python基础(02序列共性)
python基础(03列表和元组)
python基础(04字符串&字典)
python基础(05集合set)
python基础(06控制语句)
python基础(07函数)
python基础(08类和对象)
python基础(09闭包&装饰器)
python基础(10异常处理)
python基础(11文件读取)
python基础(12迭代器&生成器)
python基础(13魔法方法介绍)
python基础(14内置函数介绍)
python基础(15多线程编程介绍)

文章目录

  • python系列文章目录
  • 一、面试题附答案一


一、面试题附答案一

1、难度等级 I
如何实现 “1,2,3” 变成 [‘1’,‘2’,‘3’]

a='1,2,3'
print(a.split(','))

2、难度等级 I
1:计算整型50乘以10再除以5的商并使用print输出。
2:判断整型8是否大于10的结果并使用print输出。
3:计算整型30除以2得到的余数并使用print输出
4:使用字符串乘法实现 把字符串”我爱我的祖国”创建三遍并拼接起来最终使用print输出。

print(50*10/5)
print(8>10)
print(30%2)
print("我爱我的祖国"*3)

3、难度等级 II
将列表[[‘a’,‘b’,‘c’],[‘d’,‘e’,‘f’],[‘g’,‘h’]]中的元素依次展开
得到 一个新的列表 [‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘h’]

#方法一:分别获取每个元素,相加
a=[['a','b','c'],['d','e','f'],['g','h']]
b=a[0]
c=a[1]
d=a[2]
print(b+c+d)
#方法二:定义一个空列表,使用extend()添加
f=[]
f.extend(b)
f.extend(c)
f.extend(d)
print(f)#方法三:和方法二一致
s1=[]
s=[['a','b','c'],['d','e','f'],['g','h']]
for item in s:s1.extend(item)
print(s1)

4、难度等级 II
熟悉 列表的 sort() 方法中的key 和 reverse 参数的使用,并做demo

list=[4,2,9,1,5]
#降序
list.sort(reverse=True)
print(list)
#默认升序
list.sort()
print(list)

5、难度等级 III
将一个英文语句以单词为单位逆序排放,如 “i am a boy” 逆序排放后 “boy a am i”

a='i am a boy'         #定义一个字符串
b=a.split()            #默认按照空格分割成list
b.reverse()          #反向存放
print(' '.join(b))     #再按照空格拼接转化成str

6、难度等级 III
假设今天的上课时间为5678秒,编程计算今天上课时间是多少时,多少分,多少秒,以“xx时xx分xx秒”的形式表示出来。

num=5678
h=5678//(60*60)
m=(5678%(60*60))//60
s=5678%60
print(f'{h}{m}{s}秒')

7、难度等级 I
有如下变量 x = " zhoU" 实现如下功能:
移除x 变量对应值的两边的空格
判断x变量对应的值是否以 ‘zh’ 开头
判断x变量对应的值是否以 ‘U’ 结尾
将x变量对应的值 中的 “o” 替换为x
将 x 变量对应的值根据 “h” 分割,并输出结果
输出 x 变量对应的值中 “U” 所在索引位置
输出 x 变量中索引为2 和 3 的字符

x = " zhoU"
#去除两边的空格
x=x.strip()
print(x)
#判断是否zh开头
print(x.startswith('zh'))
#判断是否U结尾
print(x.endswith('U'))
#0替换为x
print(x.replace('o','x'))
#根据h分割
print(x.split('h'))
#输出 x 变量对应的值中 “U” 所在索引位置
print(x.find("U"))
#输出 x 变量中索引为2 和 3 的字符
print(x[2],x[3])

8、难度等级 II
通过分片创一个与原列表实现反转的列表

a=[1,2,3,4,5,6]
print(a[5::-1])       #方式1
print(a[5:-7:-1])     #方式2
print(a[-1::-1])      #方式3
print(a[-1:-7:-1])    #方式4
print(a[::-1])        #方式5

9、难度等级 I
列表一次性追加多个值,用多种方法实现

#方法一:切片插入
a=[9,0,4,5]
a[4:4]=[9,9,9]
print(a)#方法二:extend()
a.extend([6,6,6])
print(a)#方法三:相加
b=[1,2]
print(a+b)

10、输入字符串,将字符串的开头和结尾变成’+',产生一个新的字符串

#方式一、字符串替换replace()函数
a="abcdefg"
a=a.replace('a','+')
a=a.replace('g','+')
print(a)
#方式二:切片 前6个元素加一个'+','+'再加后6个字符
a="abcdefg"
a=a[:6]+'+'
a='+'+a[1:]
print(a)

11.难度I 字典内容如下
dic = {
‘python’: 95,
‘java’: 99,
‘c’: 100
}
字典的长度是多少
请修改’java’ 这个key对应的value值为98
删除 c 这个key 增加一个key-value对,key值为 php, value是90
获取所有的key值,存储在列表里
获取所有的value值,存储在列表里
判断 javascript 是否在字典中
获得字典里所有value 的和
获取字典里最大的value
获取字典里最小的value
字典 dic1 = {‘php’: 97}, 将dic1的数据更新到dic中

dic = {'python': 95,'java': 99,'c': 100
}
#字典的长度
print(len(dic))#修改Java对应的value为98
dic['java']=98#删除c增加php  90
del dic['c']
dic['php'] = 90
print(dic)# 获取所有的key值,存储在列表里
# l1 = list(dic.keys())
# print(l1)# 获取所有的value值,存储在列表里
# l2 = list(dic.values())
# print(l2)# 判断 javascript 是否在字典中
print('javascript' in dic)# 获得字典里所有value 的和
sum1 = 0
for i in dic.values():sum1 += i
print(sum1)# 获取字典里最大的value
print(max(dic.values()))# 获取字典里最小的value
print(min(dic.values()))# 字典 dic1 = {'php': 97}, 将dic1的数据更新到dic中
dic1 = {'php': 97}
dic.update(dic1)
print(dic)

12、猜数

  • 给定一个定值,比如说 99
  • 让用户输入数字,给用户三次机会,如果三次之内猜对了(输入的值等于99),显示猜测正确
  • 如果三次之内没有猜对,退出循环,显示’stupid’
    要求,用2种方式实现
#方式一:for遍历
nums=[1,2,3]
for num in nums:a=int(input("请输入数字:"))if a ==99:print("恭喜你猜对了!")breakelse:print('stupid')
#方式二:while循环
i=0
a='stupid'
while i<3:i+=1b=int(input("请输入数字:"))if b==99:a='恭喜你,猜对了!'break
print(a)

13、输入某年某月某日,判断这一天是这一年的第几天? 这边简单考虑,不考虑 闰年的情况。

year=int(input("请输入年份:"))
month=int(input("请输入月份:"))
date=int(input("请输入日:"))
num=date
y=0
for m in range(1,month):if m in (4,6,9,11):y=30elif m in (1,3,5,7,8,10,12):y=31elif m==2:y=28num+=y
print("{}年{}月{}日是这一年的第{}天".format(year,month,date,num))

14.输出101~200之间的所有素数,就是只能被1和⾃⼰整除的数,判断素数的⽅法:⽤⼀个数分别去除2到这个数的平⽅根,如果能被整除,则表明此数
不是素数,反之是素数。

num=[]
for x in range(101,200):for y in range(2,x):if x%y==0:breakelse:num.append(x)
print(num)

15、难度等级1
输入成绩:
如果是 >90 分,则显示优秀
大于等于60 且 小于等于 90 则显示良好
小于 60 ,则显示不及格

a=int(input("请输入成绩:"))
if a>90:print("优秀")
elif 60<=a<=90:print("良好")
else:print("不及格")

16、难度等级3
输出 9*9 乘法口诀表

for m in range(1,10):for n in range(1,m+1):print("{0}*{1}={2}".format(m,n,(m*n)),end="\t")print()

17、难度等级2
实现一个 函数 get_min, 函数返回列表lst 的最小值,要求不使用 min 函数

def get_min(lst):                 #定义函数lst_min=lst[1]                #定义lst_min接收最小值for i in lst:                 #遍历传入的列表if i<lst_min:             #列表的每一个元素进行比较,较小值赋值给lst_minlst_min=ielse:continueprint(lst_min)
get_min([10,3,4,7,8,2,4])

18、难度等级 2
实现一个函数,该函数参数为任意数量的数字,在函数中实现这样的功能:统计在参数中 出现的数字的个数
如 传入的参数为 func(3,5,3)
则打印
数字3 出现2次
数字 5 出现1次

for m in range(1,10):for n in range(1,m+1):print("{0}*{1}={2}".format(m,n,(m*n)),end="\t")print()

19、难度等级1
定义一个函数,实现传入整数的累乘的和,比如传入5 ,实现1+2!+3!+…+5!的和。

def num_test(i):num = 1sum=0for n in range(1,i+1):num =num*nsum +=numreturn sumprint(num_test(5))

20、难度等级2
定义一个银行账户类,Account
属性有:
用户姓名
账号
余额
对应的方法有:

  1. 存钱
  2. 取钱 (如果取出的金额>余额,提示错误信息)
# 定义一个账户类
class Account:def __init__(self, name, number,balance):self.name = nameself.number = numberself.balance = balance#存钱的方法def save_money(self,money):self.balance=self.balance+moneyprint(f"{self.name}{self.number}账户存入{money}元")print(f"{self.name}{self.number}账户余额为{self.balance}元")#取钱的方法def withdraw_money(self,money):self.balance = self.balance - moneyif self.balance>0:print(f"{self.name}{self.number}账户取出{money}元,账户余额为{self.balance}元")else:print("取款失败,您的余额不足")
#实例化
A1 = Account('佳佳',"工商",0)
print(A1.name)
print(A1.number)
A1.save_money(200)
A1.withdraw_money(10)

相关文章:

python基础(16面试题附答案一)

python系列文章目录 python基础&#xff08;01变量&数据类型&运算符&#xff09; python基础&#xff08;02序列共性&#xff09; python基础(03列表和元组) python基础&#xff08;04字符串&字典&#xff09; python基础&#xff08;05集合set&#xff09; pytho…...

Leetcode3256. 放三个车的价值之和最大 I

Every day a Leetcode 题目来源&#xff1a;3256. 放三个车的价值之和最大 I 解法1&#xff1a;贪心 从大到下排序矩阵所有值, 记为数组v。 转化此题&#xff1a;从r*c个数中选取3个数分别给到车1&#xff0c;车2&#xff0c;和车3&#xff0c;使得符合条件的三数之和最大。…...

Redis中String类型的基本命令

文章目录 一、String字符串简介二、常见命令setgetmgetmsetsetnxincrincrbydecrdecrbyincrbyfloatappendgetrangesetrangestrlen 三、命令小结四、字符串内部编码五、String典型使用场景1. 缓存(Cache)功能2. 计数功能3. 共享会话&#xff08;Session&#xff09;4. 手机验证码…...

2024 年高教社杯全国大学生数学建模竞赛题目【A/B/C/D/E题】完整思路

↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ A题是数模类赛事很常见的物理类赛题&#xff0c;需要学习不少相关知识。此题涉及对一个动态系统的建模&#xff0c;模拟…...

HR招聘新员工,如何考察企业文化适配度

要解决文化适配性问题&#xff0c;那在招聘过程中一定要明确企业核心价值观。比如通过制定明确文化价值观手册的方式&#xff0c;向求职者展示企业的使命愿景和价值观。 目前最为理想的考察方式就是线上的人才测评&#xff0c;比如&#xff1a;采用职业价值观测评法&#xff0…...

AI算力「搅局」座舱SoC

对于芯片巨头来说&#xff0c;汽车是难以割舍的赛道。 这不仅仅是因为「车规级」向来是准入门槛最高的细分市场之一&#xff0c;更重要的原因来自于从PC、智能手机到智能汽车时代&#xff0c;芯片公司都在寻求成为新周期的标杆。 比如&#xff0c;从PC时代的「英特尔」到智能手…...

lvs DR模式调试

DS配置&#xff1a; # cat /etc/keepalived_docker/keepalived.conf ! Configuration File for keepalived global_defs {router_id LVS_70 # 设置lvs的id&#xff0c;在一个网络内应该是唯一的 }vrrp_instance VI_70 {state MASTER # 两个 DS&#xff0…...

Java线程池的优化策略与最佳实践

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云/阿里云/华为云/51CTO&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互…...

android面试:解释一下 AsyncTask是什么?

AsyncTask 是 Android 中用于处理异步操作的一个类&#xff0c;它允许在后台线程中执行任务&#xff0c;并在完成后将结果传递回主线程。AsyncTask 主要用于执行短时间的后台操作&#xff0c;例如网络请求、文件读写等&#xff0c;而不阻塞用户界面。 AsyncTask 的主要特点&am…...

Django+Vue3前后端分离学习(四)(登录功能实现)

1、序列化数据&#xff1a; 创建serializers.py的python文件 从rest_framework里导入serializers类&#xff1a; from rest_framework import serializers class LoginSerializer(serializers.Serializer):email serializers.EmailField(requiredTrue, error_messages{&qu…...

机器学习面试:SVM为什么使用对偶函数求解?

支持向量机&#xff08;SVM&#xff09;在求解过程中使用对偶函数的原因主要与优化问题的性质、计算效率以及模型的泛化能力有关。以下是对偶函数在 SVM 中使用的详细解释&#xff1a; 1. 原始问题与对偶问题 在 SVM 中&#xff0c;我们的目标是找到一个超平面来最大化分类间…...

RabbitMQ 入门教程

介绍 RabbitMQ 是一个消息中间件&#xff0c;它实现了 AMQP (Advanced Message Queuing Protocol) 协议。本教程将引导你通过几个简单的步骤来学习如何使用 RabbitMQ 发送和接收消息。 环境准备 1. 安装 RabbitMQ - 在你的系统上安装 RabbitMQ: https://www.rabbitmq.com/d…...

docker进阶 compose等

Docker Compose 简介&#xff1a; 比如有100个微服务&#xff0c;不需要手动启动每一个&#xff0c;可以使用docker compose定义运行多个容器&#xff0c;高效管理化。 定义、运行多个容器 YAML file配置文件 single command 命令 写docker-compose.yaml docker-compose …...

[详细建模已更新]2024数学建模国赛高教社杯A题:“板凳龙” 闹元宵 思路代码文章助攻手把手保姆级

A 题 “板凳龙” 闹元宵 “板凳龙”&#xff0c;又称“盘龙”&#xff0c;是浙闽地区的传统地方民俗文化活动。人们将少则几十条&#xff0c;多则上百条的板凳首尾相连&#xff0c;形成蜿蜒曲折的板凳龙。盘龙时&#xff0c;龙头在前领头&#xff0c;龙身和龙尾相随盘旋&#x…...

网络编程(TCP+网络模型)

【1】TCP 初版服务器 #include <stdio.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> #include <netinet/in.h> #include <netinet/ip.h> #include <unistd.h> #include <arpa/inet.h> #include <string.h…...

Docker Image 命令

文章目录 目录 文章目录 1 . Docker镜像是什么? 2 . 镜像命令详解 docker images docker tag docker pull docker rmi docker save 总结 1 . Docker镜像是什么? Docker image 本质上是一个 read-only 只读文件&#xff0c; 这个文件包含了文件系统、 源码、库文件…...

如何在IntelliJ IDEA中将Tab设置为4个空格

前言 IntelliJ IDEA是一个强大的开发工具&#xff0c;支持多种编程语言。为了保持代码整洁一致&#xff0c;开发者经常需要调整编辑器中的Tab和缩进设置。 步骤1: 打开设置 首先&#xff0c;启动IntelliJ IDEA。在主界面上方的菜单栏中找到 File&#xff08;文件&#xff09…...

ASP.NET Core 入门教学十五 异步编程

在ASP.NET Core中&#xff0c;异步编程是一种非常重要的技术&#xff0c;它可以提高应用程序的性能和响应能力。本教程将介绍如何在ASP.NET Core中使用异步编程。 1. 异步编程基础 异步编程允许程序在等待某些操作&#xff08;如I/O操作&#xff09;完成时继续执行其他任务&a…...

pycharm 2024.1下载、安装

下载 下载官网&#xff1a; Other Versions - PyCharm 选择需要的版本下载&#xff0c;这里以 2024.1 的版本为例 安装 双击下载好的安装程序&#xff0c;点击下一步 选择安装路径&#xff0c;最好是英文路径&#xff1b;然后下一步 点击完成 激活 网址&#xff1a; Some…...

实变函数精解【18】

文章目录 有限测度有限测度概率测度有限测度与概率测度的关系 σ \sigma σ-有限测度计数测度完备概率测度 参考文献 有限测度 首先&#xff0c;我们来明确“测度”的概念。在数学中&#xff0c;测度是一个将集合映射到非负实数&#xff08;通常是实数的扩展&#xff0c;包括正…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI&#xff0c;使用客户端或是内部自己搭建集成大模型的终端&#xff0c;加速与大型语言模型&#xff08;LLM&#xff09;的结合&#xff0c;同时使用检索增强生成&#xff08;Retrieval Augmented Generation &#…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

如何更改默认 Crontab 编辑器 ?

在 Linux 领域中&#xff0c;crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用&#xff0c;用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益&#xff0c;允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...

WebRTC从入门到实践 - 零基础教程

WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC&#xff1f; WebRTC&#xff08;Web Real-Time Communication&#xff09;是一个支持网页浏览器进行实时语音…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...