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实现 蓝桥杯 算法训练 谁干的好事?
试题 算法训练 谁干的好事? 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 ABCDE中num个人做了好事,truth个人说真话. A说:"我和X中有且只有一个做了好事& ...
- Java实现 蓝桥杯VIP 算法训练 Hankson的趣味题
问题描述 Hanks 博士是BT (Bio-Tech,生物技术) 领域的知名专家,他的儿子名叫Hankson.现 在,刚刚放学回家的Hankson 正在思考一个有趣的问题. 今天在课堂上,老师讲解了如 ...
- Java实现 LeetCode 26 删除排序数组中的重复项
26. 删除排序数组中的重复项 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) ...
- 【Jquery】根据元素个数给予宽度
方法一: $(document).ready(function(){ $(".xn_mc_solu_2_ul").css("width", $(".x ...
- WebService之Spring+CXF整合示例
一.Spring+CXF整合示例 WebService是一种跨编程语言.跨操作系统平台的远程调用技术,它是指一个应用程序向外界暴露一个能通过Web调用的API接口,我们把调用这个WebService的 ...
- 20行Python代码开发植物识别 app
这篇文章介绍如何用Python快速实现一个植物识别的app,家里养了几盆多肉还叫不上名字,正好拿来识别一下.实现这样一个app只需要20行左右的代码,先来看下效果: 另外,我也开发了微信小程序版本,大 ...
- 掌握SpringBoot-2.3的容器探针:实战篇
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:原创文章分类汇总,及配套源码,涉及Java.Docker.K8S.DevOPS等 经过多篇知识 ...
- 玩转华为物联网IoTDA服务系列三-自动售货机销售分析场景示例
场景简介 通过收集自动售货机系统的销售数据,EI数据分析售货销量状况. 该场景主要描述的是设备可以通过MQTT协议与物联网平台进行交互,应用侧可以到物联网平台订阅设备侧变化的通知,用户可以在控制台或通 ...
- 从大厂DevOps工具链部署,看现代产品的生命周期管理
目录 1. 认识DevOps 1.1. DevOps工具链 1.2. CI 持续集成(Continuous Integration) 1.3. CD(持续交付 & 持续部署) 1.4. Agi ...
- VS Code项目中共享自定义的代码片段方案
VS Code项目中共享自定义的代码片段方案 一.问题背景 项目中注释风格不统一,如何统一注释风格 一些第三方组件库名称太长,每次使用都需要找文档,然后复制粘贴 部分组件库有自己的Snippets插件 ...