2023年最新Python常见编程面试题(1)精选30个题目附答案

有目标就不怕路远。年轻人.无论你现在身在何方.重要的是你将要向何处去。只有明确的目标才能助你成功。没有目标的航船.任何方向的风对他来说都是逆风。因此,再遥远的旅程,只要有目标.就不怕路远。没有目标,哪来的劲头?一车尔尼雷夫斯基

导读:本篇文章讲解 2023年最新Python常见编程面试题(1)精选30个题目附答案,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

1.统计字符串中字符出现的次数

有这样的字符串:a=‘helloworld’ 统计字符串中字符出现的次数
在这里插入图片描述

from collections import Counter
a='hello'
print(Counter(a))

2.获取字典key值键中小写字母对应键值对

d={‘a’:10,‘F’:20,‘D’:‘B2’,‘D’:‘555’,‘e’:‘123’}字典中key值是小写字母的键值对
在这里插入图片描述

d={'a':10,'F':20,'D':'B2','D':'555','e':'123'}
for key,value in d.items():
    if key.islower()==True :
        dict.update({key: value})
        print(key,value)

3.将字典中key变小写

d={‘a’:10,‘F’:20,‘D’:‘B2’,‘D’:‘555’,‘e’:‘123’}字典中所有的key变为小写 结果:
在这里插入图片描述

d={'a':10,'F':20,'D':'B2','D':'555','e':'123'}
dc = {}
for key,value in d.items():
    dc[key.lower()]=value
print(dc)

4.更改字典value值

将d={‘a’:10,‘F’:20,‘D’:‘B2’,‘D’:‘555’,‘e’:‘123’}字典中所有的的value统一赋值为’error’ 结果:
在这里插入图片描述

d={'a':10,'F':20,'D':'B2','D':'555','e':'123'}
for key in d:
    d[key]='error'
print(d)

5.将cookies变成字典形式

cookies=”JSESSIONID=abcMktGLRGjLtdhBk7OVw;first_login_flag=1;ln_uact=55883008898;wp_fold=0″字符串转换成字典的形式 结果
在这里插入图片描述

cookies="JSESSIONID=abcMktGLRGjLtdhBk7OVw;first_login_flag=1;ln_uact=55883008898;wp_fold=0"
dc = {cookies.split('=')[0]:cookies.split('=')[1] for cookies in cookies.split(';')}
print(dc)

6.有如下字符串username把它转换成为UserName

在这里插入图片描述

第一种写法

s='username'
print(s.replace(s,'UserName'))

第二种写法

s='username'
print(s[0:4].capitalize()+s[4:].capitalize()) 

第三种写法

s='username'
s1=''
for i in s:
    if i=='u' or i=='n':
        s1+=i.upper()
    else:
        s1+=i
print(s1)

7.分别求出奇数和偶数把奇数偶数存放在对应存放奇数偶数的列表中

sum_1=[]
sum_2=[]
for i in range(101):
    if i%2==0:
        sum_2.append(i)
    else:
        sum_1.append(i)
print(sum_1)
print(sum_2)

8.分析以下数据

1 1 2 3 5 8 13 21来实现此结果输出结果是
在这里插入图片描述

l=[]
for i in range(8):
    if i==0 or i==1:
        l.append(1)
    else:
        l.append(l[i-2]+l[i-1])
print(l)

9.去重后将元素放入新的列表

1=[1,1,4,2,2,5,6,9]实现把元素去重后返回一个新的列表结果是:
在这里插入图片描述

[1,1,4,2,2,5,6,9]
l1=[]
for i in l:
    if i not in l1:
        l1.append(i)
print(l1)

10.将列表转成字典,value值为None

l=[‘a’,‘b’,‘c’]
在这里插入图片描述

l=['a','b','c']
d1={}
for i in l:
    d1[i]='None'
print(d1)

11.两个字典合并

l=[‘abc’,‘bb1’,‘c3’] l1=[1,2,3]
把这两个列表转换为字典结果
在这里插入图片描述

l=['a','b','c']
l1=[1,2,3]
d={}
c = dict(zip(l,l1))
print(c)

12. 字符串替换

a=‘I LOVE YOU’ 实现输出结果
在这里插入图片描述

a='I LOVE YOU'
ab=a.replace('YOU','2023')
print(ab)

13.把字符串转换为字典

a=‘A1:1|A2:2|A3:3’ 结果
第一种:
在这里插入图片描述

a='A1:1|A2:2|A3:3'
d={}
d1=a.split('|')
for i in d1 :
    s1 = i.split(':')
    d.setdefault(s1[0],s1[1])
print(d)

14.通过for循环来完成99乘法表

2023年最新Python常见编程面试题(1)精选30个题目附答案

for x in range(1,10):
    for y in range(1,x+1):
        print('%d*%d=%d' % (x,y,x*y))

15.列表去重

l = [4, 2, 1, 3, 4, 2, 5, 9, 3, 2, 2, 2,9,9,9],去除列表中的重复元素
在这里插入图片描述

第一种

l = [4, 2, 1, 3, 4, 2, 5, 9, 3, 2, 2, 2,9,9,9]
b1 = set(l)
print(b1)

第二种:

l = [4, 2, 1, 3, 4, 2, 5, 9, 3, 2, 2, 2,9,9,9]
l1 = []
for i in l:
    if i not in l1:
        l1.append(i)
print(l1)

16.如何不通过循环,输出1到10

在这里插入图片描述

def prints(n):
    if (n > 0):
        prints(n-1)
        print(n)
if __name__ == '__main__':
        prints(10)

17.使用函数,输出1到10

在这里插入图片描述

def a1():
    for i in range(1,11):
        print(i)
if __name__ == '__main__':
        a1()

18.如何对单词反转

a=‘ABC’
在这里插入图片描述

a='ABC'
a2 = sorted(a,reverse=True)
print(a)
a3 = ''.join(a2)
print(a3)

19.两个列表如何合并成字典

}
第一种:

l1=['wang','li','wt','kkke']
l2=[10,20,30,40]
l3= dict(zip(l1,l2))
print(l3)

第二种:

l1=['wang','li','wt','kkke']
l2=[10,20,30,40]
l3={}
for i in range(len(l1)):
    l3[l1[i]]=l2[i]
print(l3)

20.统计字符串s=’I love abc’中,每个元素出现的次数

在这里插入图片描述

from collections import Counter
s='I love abc'
print(Counter(s))

21.有一个学生分数的字典 d={“stu1”:10, “stu2”:20, “stu3”:30} ,请按分数进行排序(从大到小)

在这里插入图片描述

import operator;
d={"stu1":50, "stu2":20, "stu3":30}
d1=sorted(d.items(),key=operator.itemgetter(1),reverse=True)
print(d1)

22.列表l =[1,2,3,5,6]转字符串

在这里插入图片描述

l =[1,2,3,5,6]
l1 = [str(i) for i in l]
l2 = ''.join(l1)
print(l2)

23.判断一个字符串中的括号是不是成对出现的

s = “256{}{}{111{555}}{{}}{}{}”

在这里插入图片描述

s1 = "{}{}"
if s.count(s1)!=0:
    print('yes')
else:
    print('no')

24.返回字符串中第一个不重复的字母和位置

a=‘aaabbbccckdkdkdeitrugalgfklafdcv,zcv.,mhkaghf’
在这里插入图片描述

def first_char(str):
    d = {}
    for i in range(len(str)):
        if str[i] in d:
            d[str[i]] += 1
        else:
            d[str[i]] = 1
    for i in range(len(str)):
        if d[str[i]] == 1:
            return '第一个不重复的字符串是{},索引是{}'.format(str[i], i)
    return "None"
if __name__ == '__main__':
    s1 = 'aaabbbccckdkdkdeitrugalgfklafdcv,zcv.,mhkaghf'
    res = first_char(s1)
    print(res)

25.求一个数字列表里,相邻两数乘积最高的值,两个数分别是多少?

在这里插入图片描述

l = [10,5,1,2,3,4,5,6,7,8,9]
def mu(list):
    l1 =[]
    for i in range(1,len(list)):
        j = i-1
        mut = list[i]*list[j]
        l1.append((mut,list[i],list[j]))
    return max(l1)
mut,left,right = mu(l)
print(mut,left,right)

26.通过函数完成def sum(n): 用传形参赋予实参的方法来实现 5的累加之和 0+1+2+3+4+5=结果

在这里插入图片描述

def sum(n):
    j = 0
    for i in range(0,n):
        j=j+i
    print(j)
sum(5)

27.实现简单ATM查询余额

在这里插入图片描述

有一查询余额的系统,帐号:user1 密码:123456 验证码:1234
登录成功,查询您的余额是:您的余额是10万元
输入错误,返回请重新输入

a = input('请输入账号')
if a =='user1':
    b = input('请输入密码')
if b =='123456':
    c = input('请输入验证码')
if c=='1234':
    print('您的余额是10万元')
else:
    print('输入错误,返回请重新输入')

28.把网址后面地址转换成字典内的值

url=“http://www.abc.com?page_size=30&page_index=31&user_id=2023”
在这里插入图片描述

def funadd():
    url="http://www.abc.com?page_size=30&page_index=31&user_id=2023"
    sp=url.split('?')
    del sp[0]
    d={}
    for i in sp:
        s1=i.split('&')
        for j in s1:
            s2=j.split('=')
            d.setdefault(s2[0],s2[1])
    print(d)
funadd()

29.求阶乘 求10的阶乘(递归函数完成)

在这里插入图片描述
第一种:

def d(n):
    a =1
    for i in range(1,n):
        a=a*i
        print('%d!=%d'%(i,a))
d(11)

第二种:

import math
def d(n):
    print('%d!=%d'%(n-1,math.factorial(n)))

d(11)

30.用字典方式实现登录注册

data ={'root1':'123456','admin':'1234'}
def login():
    username=input('请输入账号') 
    if not data.__contains__(username): 
        print('请先注册')
        reg()
    else:
        userpwd=input('输入密码')
        if userpwd==data[username]:
            print('登录成功')
        else:
            print('密码错误')
def register():
    zcname=input('请输入账号:')
    if data.__contains__(zcname):
        print('账号已经注册')
        logjump()
    else:
        rgpwd1=input('输入密码:')
        rgpwd2=input('再次确认密码:')
        if rgpwd1==rgpwd2:
            print('两次的密码一致,注册成功')
            data.setdefault(zcname,rgpwd2)
            print(data)
            logjump()
        else:
            print('密码不一致,重新注册')
            register()
if __name__ == "__main__":
       	login()

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/134087.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!