zoukankan      html  css  js  c++  java
  • 10道Python编程面试题,你能顺手写几道?

    1.统计在一个队列中的数字,有多少个正数,多少个负数。

    a=[1,3,5,7,9,11,0,-2,-4,-6,-8,-10]
    m = 0   #m:统计大于0的数
    n = 0   #n:统计小于0的数
    for i in a:
        if i > 0:
            m += 1
        elif i < 0:
            n += 1
    print("大于0的个数:{}".format(m))
    print("小于0的个数:{}".format(n))
    

      

    2.请把字符串"软件测试"里的字符串逐个打印出来。

    str='测试'
    for i in str:
        print(i)

    3.字符串"微信公众号:软件测试",输出为”软件测试小栈:微信公众号"。

    str="微信公众号:软件测试"
    list_str=list(str.split(':'))
    list_str.reverse()
    print(":".join(list_str))
    

      

    4.请把两个列表提取作为字典:

    现有2个列表

    keys = ['name', 'age', 'city','微信公众号']

    values = ['CoCo', 18, 'ShenZhen','I软件测试']]

    需要将转换为字典,结果如下:

    {'name': 'CoCo', 'age': 18, 'city': 'ShenZhen', '微信公众号': '软件测试'}

    keys = ['name', 'age', 'city','微信公众号']
    values = ['CoCo', 18, 'ShenZhen','软件测试']
    dict = dict(zip(keys, values))
    print(dict)
    

      

    5.Python代码计算1-1000以内能被7整除,除以5余3的整数,并按行打印。

    for i in range(1, 1000):
        if i % 7 == 0 and i % 5 ==3:
            print(i)
    

      

    6.用递归实现数字的阶乘N!,如n=9时,s=9*8*7*6*5*4*3*2*1

    def a(n):
        if int(n)<=1:
            return 1
        else:
            return n*a(n-1)
    print(a(9))
    

      

    7.合并两个列表,并消除重复的值。

    list_1=["CoCo","CiCi","软件测试","520"]

    list_2=["520","ITesterA","888",666,"CoCo"]

    list_1=["CoCo","CiCi","软件测试","520"]
    list_2=["520","ITesterA","888",666,"CoCo"]
    res=set(list_1+list_2)
    print(res)
    

      

    8.使用while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和。

    #从2开始计算
    i = 2
    #定义一个变量用于保存结果
    sum=0
    while i <= 100:
        if i % 2 == 0:
            sum = sum + i
        else:
            sum = sum - i
        i += 1
    print("2-3+4-5+6...+100=",sum)
    

      

    9.检查传入列表的长度,如果大于2,那么仅仅保留前两个长度的内容,并将新内容返回。

    def func(*args):
        """
        检查列表长度,如果大于2,那么保留前两个长度的内容,并将新内容返回s
        :param args:
        :return:
        """
        #遍历列表
        for i in args:
            # print(i)
            #获取长度
            len_i=len(i)
            #判断长度
            #如果长度大于2,返回前两个,利用切片[:2]
            if len_i>2:
                return (i[:2])
            #否则,返回i即可
            else:
                return (i)
    #调用函数,将新内容返回给L
    L=func(["CoCo","微信公众号:软件测试",520])
    print(L)
    

      

    10.将用户输入的所有数字相乘之后对20取余数,用户输入的数字个数不确定

    #定义函数
    def func(*args):
        """
        将用户输入的所有数字相乘之后对20取余数
        :param args:
        :return:
        """
        # 初始积为1
        mul = 1
        # 遍历所有用户输入的动态参数
        for value in args:
            # 将所有输入的数字相乘
            mul *= value
        print("所有数字相乘之后对20取余数,计算结果为:{}".format(mul % 20))
    
    while True:
        try:
            #从控制台获取用户输入的数字
            num = input('请输入需要计算的数字(数字之间以英文分隔):')
            #将用户输入的数字以英文逗号进行分割存入list_num
            list_num = num.split(',')
            #定义一个空列表new_list_num
            new_list_num = []
            #遍历list_num列表,将值依次存入new_list_num列表
            for i in list_num:
                #强制转换成int类型
                new_list_num.append(int(i))
            #调用func1方法 带一个*解包
            func(*new_list_num)
        except Exception as e:
                #如果输入非法(输入小数/字符/中文)
                print("33[31;1m输入有误,请重新输入!33[0m")
    

      

  • 相关阅读:
    PHP递归复制文件夹以及传输文件夹到其他服务器。
    CSS中的disable,hidden,readonly
    linux下用scp命令在两个服务器之间传输文件,利用php_scp函数进行文件传输
    在PHP中调用php_ssh实现远程登陆linux服务器并执行shell脚本。
    Centos7搭建lamp环境
    Golang 标准库构建 http.Requests 请求
    go modules 的使用
    Golang 自用第三方库
    《Go 语言并发之道》读后感-第五章
    《Go 语言并发之道》读后感
  • 原文地址:https://www.cnblogs.com/chenyablog/p/15187154.html
Copyright © 2011-2022 走看看