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. 「快学Docker」Docker简介、安装和Hello World实现

    前言 Docker已经成为了一门炙手可热的技术,每个程序员(特别是后端程序员)都应该学习下Docker这门技术. Docker是什么 来自官网的定义:Docker是以Docker容器为资源分割和调度的 ...

  2. 【转】bug management process

    What is Bug? A bug is the consequence/outcome of a coding fault What is Defect? A defect is a variat ...

  3. MIT宣布人工智能独立设系!

    导读 MIT宣布人工智能独立设系!AI与电子工程.计算机科学系将三分天下? MIT 电子工程和计算机科学系(EECS)拆分啦.拆分后分为 3 个学科群(faculty),或者说 3 个系:电子工程(E ...

  4. Codeforces 601A:The Two Routes 宽搜最短路径

    A. The Two Routes time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  5. [CEOI 2004]锯木厂选址

    Description 题库链接 从山顶上到山底下沿着一条直线种植了 \(n\) 棵老树.当地的政府决定把他们砍下来.为了不浪费任何一棵木材,树被砍倒后要运送到锯木厂. 木材只能朝山下运.山脚下有一个 ...

  6. Ubuntu18.04下Qt5.9.8连接mysql数据库失败的解决办法

    问题: 连接mysql数据库时,出现如下 提示: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQ ...

  7. Java解析json数组三种情况

    package com.example.demo.json; import java.util.Map; import com.alibaba.fastjson.JSON; import com.al ...

  8. SpringBoot之日志记录-专题四

    SpringBoot之日志记录-专题四 六.日志管理 6.1使用log4j记录日志 6.1.2新建log4j配置文件 文件名称log4j.properties #log4j.rootLogger=CO ...

  9. 最新获取SkyDrive音乐外链mp3地址方法20131003

    最新获取SkyDrive音乐外链方法20131003在文章底部更新,欢迎使用! 这已经是第三次写获取SkyDrive音乐外链mp3地址方法的文章了,因为第一次.第二次都失效了.三篇文章都有个共同点,都 ...

  10. 1-Docker学习笔记

    docker还是比较容易的,比较蛋疼的就是镜像网络问题,不过也可以配置了镜像加速器(比如阿里云).这里重点记录一下初学docker时遇到的知识点. docker环境变量 docker对环境变量的定义和 ...