1.将字符串“老男孩”转换成UTF-8编码的字节类型

s = "老男孩"
bytes(s,'utf8')
s.encode('utf8')

2.简述globals(),locals()的作用

答:globals()获取所有的全局变量

  locals()获取所有局部变量

3.利用内置函数zip(),实现功能

l1 = ["alex",22,33,44,55]     l2 = ["is",22,33,44,55]

l3 = ["good",22,33,44,55]     l4 = ["guy",22,33,44,55]

请获取字符串 s = "alex_is_good_guy"

l1 = ["alex",22,33,44,55]
l2 = ["is",22,33,44,55]
l3 = ["good",22,33,44,55]
l4 = ["guy",22,33,44,55]
print("_".join(list(zip(l1,l2,l3,l4))[0]))

4.书写执行结果

a.

name = "苍老师"
def outer(func):
name = 'alex'
func()
def show():
print(name)
outer(show)

输出结果为:苍老师

b.

name = "苍老师"
def outer():
name = "波多"
def inner():
print(name)
return inner()
ret = outer()
print(ret)

输出结果为:波多  None

c.

name = "苍老师"
def outer():
name = "波多"
def inner():
print(name)
return inner
ret = outer()
ret()
print(ret)
result = ret()
print(result)

输出结果为:波多   <function outer.<locals>.inner at 0x000002383F865598>    波多   None

d.

def outer(func,z,y)
return func(z) #若无return 则输出None
def show(x)
return x*x
ret = outer(show,9,23)
print(ret)

输出结果为:81

e.

def outer(func,z,y):
return func(z,y) #若无return 则输出None
f1 = lambda x,y:x+y
ret = outer(f1,11,22)
print(ret)

输出结果为:33

5.利用递归实现1*2*3*4*5*6*7=5040

def num(n,a = 1):
if n == 1:
return a
a *= n
res = num(n-1,a)
return res
print(num(7))
from functools import reduce
print(reduce(lambda x,y:x*y,range(1,8)))
print(reduce(lambda x,y:x*y,[i for i in range(1,8)])) #列表解析
def f(n):
if n == 1:
return 1
return n*f(n-1)
a = f(7)
print(a)

6.利用with实现同时打开两个文件(一读,一写,并将读取到的内容写入到写入模式的文件中)

with open('a.txt','r',encoding='utf8') as x,\
open('b.txt','w',encoding='utf8') as y:
y.write(x.read())

7.有一筐桃子,猴子每天吃一半加一个,吃到第十天只剩一个,问一筐桃子原来有多少个?

1.递归法:
def f(day,a):
if day == 1:
return a
a = (a+1)*2
day -= 1
res = f(day,a)
return res
sum = f(10,1)
print(sum)
2.函数法:
sum = 1
func = lambda x:(x+1)*2
for i in range(9):
  sum = func(sum)
print(sum)

输出结果为:1534

python练习题4的更多相关文章

  1. Python练习题 028:求3*3矩阵对角线数字之和

    [Python练习题 028] 求一个3*3矩阵对角线元素之和 ----------------------------------------------------- 这题解倒是解出来了,但总觉得 ...

  2. Python练习题 027:对10个数字进行排序

    [Python练习题 027] 对10个数字进行排序 --------------------------------------------- 这题没什么好说的,用 str.split(' ') 获 ...

  3. Python练习题 026:求100以内的素数

    [Python练习题 026] 求100以内的素数. ------------------------------------------------- 奇怪,求解素数的题,之前不是做过了吗?难道是想 ...

  4. Python练习题 025:判断回文数

    [Python练习题 025] 一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. ---------------------------------------- ...

  5. Python练习题 024:求位数及逆序打印

    [Python练习题 024] 给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. ---------------------------------------------- ...

  6. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  7. Python练习题-1.使用匿名函数对1~1000求和,代码力求简洁。

    Python 练习 标签(空格分隔): Python Python练习题 Python知识点 一.使用匿名函数对1~1000求和,代码力求简洁. 答案: In [1]: from functools ...

  8. PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  9. python 基础 2.8 python练习题

    python 练习题:   #/usr/bin/python #coding=utf-8 #@Time   :2017/10/26 9:38 #@Auther :liuzhenchuan #@File ...

  10. Python练习题2

    如果真的想学精,学什么都不是好学的,如果真的想把Python学的出神入化,几乎自己想做什么都可以,就要下定恒心,坚持下去. 接下来继续更新Python练习题2,通过更新前一部的练习题让自己也学到了不少 ...

随机推荐

  1. 07 DTFT

    DTFT 连续时间傅里叶变换(CTFT) 连续时间傅里叶变换的定义为: \[ X(j\Omega)=\int_{-\infty}^{\infty}x_a(t)e^{-j\Omega t}dt \] 其 ...

  2. unity 热更方案对比

    现在一般使用的方案有:tulua&ulua.xlua.ILRuntime 对比: tulua&ulua 方案成熟,稳定第三方库支持 xlua 之前是为了热更修复线上bug的,腾讯发起的 ...

  3. hdoj6708 2019 CCPC网络选拔赛 1007 Windows Of CCPC

    #include <cstdio> #include <iostream> #include <algorithm> using namespace std; ch ...

  4. 2020.02.28 Linux 命令

    Cat   语法格式 cat [-AbeEnstTuv] [--help] [--version] fileName 参数说明: -n 或 --number:由 1 开始对所有输出的行数编号. -b ...

  5. notepad++常用命令

    1>shift+tab减少缩进 2>tab键增加缩进 3>ctrol+d键复制多行 4>shift+alt+方向箭头,选中列 5>alt+c插入序列 6>ctrl+ ...

  6. kali安装vm tools正确操作

    参考博文:https://blog.csdn.net/qq_39536876/article/details/79501471 前言:每次在执行完 ./vmware-install.pl 重启后,总是 ...

  7. ZeroTier 局域网组建工具

    无公网IP通过ZeroTier实现内网穿透 需求:想要在公司访问家里内网NAS,或是在家里访问公司服务 有固定的公网IP或动态的公网IP:常见的方案动态域名解析做端口转发方式等 无公网IP:常见的实现 ...

  8. Android之收音机UI实现(转)

    源码: http://www.2cto.com/kf/201211/171417.html 最近在研究收音机的源码,本来想把收音机从源码中提取出来,做成一个单独的应用,但是,收音机需要底层的支持,所以 ...

  9. windows通过zip安装mysql5.7.26的一个坑

    需要将my.ini的 红框的/不能写成\ 注意编码格式问题 然后 mysqld --initialize-insecure mysqld --install net start mysql

  10. Fiddler抓包(基本使用方法、web+app端抓包、篡改数据、模拟低速)

    1.HTTP代理原理图 http服务器代理:既是web服务器,又是web客户端 接口vs端口: 接口:包含地址和端口 端口:类似于USB接口 地址:127.0.0.1,端口默认:8888        ...