python基础知识测验_python基础知识练习1

1.要求:输入A、B、C获得方程的解。

c7f8fe2d2acce09ac539e428323e5715.png

分析:通过input函数接收A,B,C的值。通过公式计算出detal的值,再根据条件进行判断,输出所需要的值:

def args_input():

try:

A = float(input('请输入A的值:'))

B = float(input('请输入B的值:'))

C = float(input('请输入C的值:'))

return A, B, C

except:

print('请输入正确的数据类型')

return args_input()

def get_delta(A, B, C):

return B ** 2 - 4 * A * C

def solve():

A, B, C = args_input()

delta = get_delta(A, B, C)

if delta < 0:

print('该方程无解')

elif delta == 0:

x = B / (-2 * A)

print('x=', x)

else:

# 计算x1 x2的值

x1 = (B + pow(delta, 0.5)) / (-2 * A)

x2 = (B - pow(delta, 0.5)) / (-2 * A)

print('x1=', x1)

print('x2=', x2)

def main():

solve()

if __name__ == '__main__':

main()

2.第n(n>=1)个人的年龄是多少?请编写函数解答

5514c04c289f1f0da815c2cebf02b95c.png

分析;可以从后往前推,采用函数递归的方式实现

def age_guess(n):

if n == 1:

return 10

else:

return age_guess(n-1)+2

print(age_guess(5))

3.a=”abbbbbccc”,使用正则表达式匹配为abccc,不管有多少b,就出现一次b。

分析:是要把‘bbbbb’换成‘b’,可以使用re.sub(pattern,repel,string)。

方法一

import re

a = 'abbbccc'

# ret = re.sub(正则,要替换的部分,字符串)

ret = re.sub(r'[b]+', 'b', a)

print(ret)

方法二

import re

regex = re.compile(r'[b]+')

d = regex.sub('b', a)

print(d)

4.默写一个通用装饰器

def set_func(func):

def call_func(*args, **kwargs):

ret = func(*args, **kwargs)

return ret

return call_func

5.当在浏览器输入www.baidu.com时候,返回页面的过程中都发生了什么?请简要写出步骤。

1.浏览器向DNS获取web服务器www.baidu.com的IP地址:115.239.210.27。

2.浏览器与IP地址为115.239.210.27的服务器进行tcp连接,端口号为443。

3.浏览器执行HTTP协议,发送GET命令,请求读取该文件。

4.www.baidun.com服务器返回该文件到客户端。

5.释放TCP连接。

6.浏览器解释该文件内容,并显示文件表示的页面

6.编写一个函数,输入一个字符串,返回字符串的倒序结果和字符长度。

方法一

def trans_str():

my_str = input("请输入要逆序的字符串")

a = list()

for var in my_str:

a.append(var)

a.reverse()

b = ''.join(a)

print(b)

trans_str()

方法二

def trans_str():

my_str = input("请输入要逆序的字符串")

my_str = my_str[::-1]

print(my_str)

trans_str()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值