python基础之逻辑题(2)

  1.若k为整数,下列while循环执行的次数为?

   2.请输出正确结果-----numbers?

   3.求结果-----math?

    4.求结果-----sum?

   5.输入一个字符串,输出该字符串中字符的所有组合?

   6.i和n的值?

   7.生成器编写fib函数?

   8.写一个base62ebcode,62进制?

   9.实现一个装饰器,限制该函数被调用的频率?

  10.求结果------map?

1.若k为整数,下列while循环执行的次数为

k=1000
while k>1:
print(k)
k=k/2 结果:10次
------------------ k=1000
while k>1:
print(k)
k=k//2 结果:9次

2.请输出正确结果

numbers = [1,2,3,4]
numbers.append([5,6,7,8]) #添加的是一个整体,想当一个元素,不要理解错了
print (len(numbers)) 结果:
5

3.求结果

import math
print(math.floor(5.5)) -------------------
结果:
python2 :5.0
python3 : 5

4.求结果

names1 = ['Amir','Barry','Chaies','Dao']
names2 = names1
names3 = names1[:]
names2[0]='Alice'
names3[1]='Bob'
sum = 0
for ls in (names1,names2,names3):
if ls[0]=='Alice':
sum+=1
if ls[1]=='Bob':
sum+=10
print(sum) ------------------------------------
names1
['Alice', 'Barry', 'Chaies', 'Dao']
names2 此时是赋值,相当于完全复制,所以其内存空间与值与names1是完全相同的
['Alice', 'Barry', 'Chaies', 'Dao']
names3 此时是浅拷贝,所以相当于只拷贝到表层,names3[1]='Bob' 时只改变了names3 中的值
['Amir', 'Bob', 'Chaies', 'Dao'] 结果:
12

5.输入一个字符串,输出该字符串中字符的所有组合

#列如 输入字符串'1,2,3'则输出位1,2,3,12,13,23,123(组合数不考虑顺序 所以12,21是等价的)

imp
s = "1,2,3"
#
lst = s.split(",") # [1, 2, 3] for i in range(1, 2**len(lst)):
# print(i)
bin = format(i, ""+str(len(lst))+"b")
# print(bin)
num = ""
for j in range(len(bin)):
if bin[j] == '':
num += str(lst[j])
print(num) 结果
3
2
23
1
13
12
123

6.执行下面代码后,i和n的值为

int i=10
int n=i++%5 结果
11,0 i++ 是后加加,在表达式内不自增
int n= i++%5; // i=10进入,n=0,出了表达式 才自增 i=11; int i=11
int m= ++i%5; // i=11 进入, 前加加,则先增1,i=12, m=2, 出表达式 i 维持12

7.使用生成器编写fib函数,函数声明为fib(max)输入一个参数max值,使得该函数可以这样调用

def fib(max):
yield 1000
for i in range(100):
print(fib(1000)) #生成器
#并产生如下结果(斐波那契数列)1,1,2,3,5,8,13,21,....
n=100
a,b =1,1
while a<n:
print(a)
a,b=b,a+b

8.写一个base62encode 函数,62进制

def base62Encode(n):
s = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
lst = []
while n > 0:
lst.append(n % 62) #
n = n // 62 lst = lst[::-1]
result = ""
for item in lst: #
result += s[item] return result print(base62Encode(58)) 结果
w

9.请实现一个装饰器,限制该函数被调用的频率,入十秒一次

import time

def wrapper(fn):
n = 0
def inner(*args, **kwargs):
nonlocal n
now = time.time()
if now - n > 10:
n = now
ret = fn(*args, **kwargs)
return ret
else:
print("不让访问, 您访问的频率太快了") return inner @wrapper
def target():
pass target()
time.sleep(10) # 让他睡10秒
target()
target()
target() 结果:
不让访问,你访问的频率太快了
不让访问,你访问的频率太快了

10.map(str,[1,2,3,4,5])输出结果是

结果:
python3: (返回迭代器)
<map object at 0x0000020A1DFF7198>
python2: (返回列表)
['', '', '', '', '']

                                                                                 

python基础之逻辑题(2)的更多相关文章

  1. python基础之逻辑题(3)

    Python基础之逻辑题(3) 1.编写一个函数实现将IP地址转换成一个整数 2.求结果:---lambda 3.求a的结果 4.求下面nums的输出 5.求下面片段的输出 6.写出程序的结果:--- ...

  2. python基础之逻辑题(1)

    python基础之逻辑题(1) 1.用一行代码实现数值交换? 2.求结果--fromkeys? 3.1,2,3,4,5能组成多少个互不相同且无重复的三位数? 4.有两个字符串列表a和b,每个字符串是逗 ...

  3. 面试题之第一部分(Python基础篇) 80题

    第一部分(python基础篇)80题 为什么学习Python?==*== # 1. python应用于很多领域,比如后端,前端,爬虫,机器学习(人工智能)等方面,几乎能涵盖各个开发语言的领域,同时它相 ...

  4. python面试题解析(python基础篇80题)

    1.   答:出于编程的喜爱,以及行业本身的前瞻性,创造性,优越性,越是综合的科目越能检验一个人的能力,喜欢这种有挑战的事情. 2.   答:跟随老师学习,以及自己查询资料,结合实战,进行输入输出以及 ...

  5. python(9)- python基础知识刷题

    1.  执行 Python 脚本的两种方式 交互方式:命令行 Windows操作系统下,快捷键cmd,输入“python”启动交互式python解释器. 文件方式:python文件 2.  简述位.字 ...

  6. python基础语法170题

    语言特性 1.谈谈对 Python 和其他语言的区别2.简述解释型和编译型编程语言3.Python 的解释器种类以及相关特点?4.说说你知道的Python3 和 Python2 之间的区别?5.Pyt ...

  7. python基础面试常见题

    1.为什么学习Python? Python是目前市面上,我个人认为是最简洁.最优雅.最有前途.最全能的编程语言,没有之一. 2.通过什么途径学习的Python? 通过自学,包括网上查看一些视频,购买一 ...

  8. python基础易错题

    1.以下代码输入什么: class Person: a = 1 def __init__(self): pass def getAge(self): print(__name__) p = Perso ...

  9. python基础技巧综合训练题2

    1,判断一个字符串中的每一个字母是否都在另一个字符串中,可以利用集合的特性来解,集合的元素如果存在,再次更新(update) 是添加不进集合的,那么集合的长度还是跟原来一样,如果添加进去,集合长度就会 ...

随机推荐

  1. 避免SQL注入三慷慨法

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/wangyy130/article/details/26154837       要说SQL注入还要从 ...

  2. PYTHON网络爬虫与信息提取[信息的组织与提取](单元五)

    1 三种信息类型的简介 xml : extensible markup language 与html非常相似 现有html后有xml xml是html发展来的 扩展 通用 json  类型 javas ...

  3. c++控制内存分配

    为了满足应用程序对内存分配的特殊需求,C++允许重载new运算符和delete运算符控制内存分配,通过定位new表达式初始化对象(好处是可以在某些场景下避免重新内存分配的消耗) 1.operate n ...

  4. spring源码学习之默认标签的解析(一)

    继续spring源码的学习之路,现在越来越觉得这个真的很枯燥的,而且我觉得要是自己来看源码,真的看不下去,不是没有耐心,而是真的没有头绪,我觉得结合着书来看,还是很有必要的,最起码大致的流程是能够捋清 ...

  5. C++中的 istringstream 的用法

    C++引入了ostringstream.istringstream.stringstream这三个类,要使用他们创建对象就必须包含<sstream>这个头文件. istringstream ...

  6. webpack学习之——npm的安装依赖情况

    这几天一直在研究webpack模块话打包工具,在网上的资源还是蛮丰富的,现在总结下这块的内容,需要好好的研究下,如果有问题,还请指正. 先是第一个为问题,就是npm-install --save 和n ...

  7. DirectX11笔记(六)--Direct3D渲染2--VERTEX BUFFER

    原文:DirectX11笔记(六)--Direct3D渲染2--VERTEX BUFFER 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u0103 ...

  8. 备考2019年6月份PMP考试-分享一些考试笔记(二)

    最新比较经典的100道试题,有备考的小伙伴可以练练手,文章末尾附答案. 1     一个项目经理在运作一个数据中心安装项目.他发现相关方很恼火,因为他超出了预算,原因是人员费用要高于原先的计划.另外项 ...

  9. POJ1485 Sumdiv

    Sumdiv Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 22680   Accepted: 5660 Descripti ...

  10. 【水滴石穿】React-Redux-Demo

    这个项目没有使用什么组件,可以理解就是个redux项目 项目地址为:https://github.com/HuPingKang/React-Redux-Demo 先看效果图 点击颜色字体颜色改变,以及 ...