python基础知识练习1
1.要求:输入A、B、C获得方程的解。

分析:通过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)个人的年龄是多少?请编写函数解答

分析;可以从后往前推,采用函数递归的方式实现
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()
python基础知识练习1的更多相关文章
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python基础知识(二)
以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍
- python 基础知识(一)
python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...
- python基础知识讲解——@classmethod和@staticmethod的作用
python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
- Python基础知识(Basic knowledge)
Python基础知识(Basic knowledge) 1.认识Python&基础环境搭建 2.Python基础(上) 3.Python基础(中) 4.Python基础(下) 5.Python ...
- Python 基础知识(一)
1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...
随机推荐
- Java实现 LeetCode 36 有效的数独
36. 有效的数独 判断一个 9x9 的数独是否有效.只需要根据以下规则,验证已经填入的数字是否有效即可. 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. 数字 1-9 在 ...
- Java实现找零问题
1 问题描述 现需找零金额为n,则最少需要用多少面值为d1 < d2 < d3 < - < dm的硬币?(PS:假设这m种面值d1 < d2 < d3 < - ...
- Java实现寻找最小的k个数
1 问题描述 有n个整数,请找出其中最小的k个数,要求时间复杂度尽可能低. 2 解决方案 2.1 全部排序法 先对这n个整数进行快速排序,在依次输出前k个数. package com.liuzhen. ...
- Java实现 蓝桥杯 历届试题 错误票据
问题描述 某涉密单位下发了某种票据,并要在年终全部收回. 每张票据有唯一的ID号.全年所有票据的ID号是连续的,但ID的开始数码是随机选定的. 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成 ...
- 用js实现简单的抛物线运动
前言 老早就看过一些购物车的抛物线效果,也想自己凑热闹动手来实现一遍. 然后(lll¬ω¬) 书到用时方恨少,发现高中学到物理啊.数学啊,都忘光了,抛物线公式都忘了0 0. 顺手百度一波,从百度可知: ...
- Base-64字符串无效,The input is not a valid Base-64 string as it contains a non-base 64 character
base64规则: * 字符串只可能包含A-Z,a-z,0-9,+,/,=字符* 字符串长度是4的倍数* =只会出现在字符串最后,可能没有或者一个等号或者两个等号 首先,C# 做上传文件的时候,需要替 ...
- C#winform单线程事例与多线程事例
通过例子编写,用winform编写的,讲解单线程与多线程使用,用于异步加载数据,界面不会卡死,数据在后台默认加载,给用户更好的体验.稍后会附加完整代码. 1.先不用线程,显示一个求和,计算过程中要停留 ...
- CSS中的float和margin的混合使用
在最近的学习中,在GitHub上找了一些布局练习,我发现了我自己对布局超级不熟悉(很难受). 在以前的学习中,感觉使用CSS就记住各个属性的功能就OK了,但是呢?真的很打脸.不说了,太伤心了,进入正题 ...
- 【译】Introducing YARP Preview 1
1 YARP YARP是一个项目,用于创建反向代理服务器.它开始于我们注意到来自微软内部团队的一系列问题.他们要么为其服务构建反向代理,要么询问 API 和用于构建 API 的技术.因此我们决定让他们 ...
- 关于前端JS走马灯(marquee)总结
方案一: <marquee width="360" scrolldelay="20" scrollamount="2" onclick ...