Python【每日一问】32
问:
【基础题】:手机品牌存放在一个列表中 brandlist = ['华为','苹果','一加','OPPO','小米'],请实现以下功能:随机选择一个手机品牌屏幕输出
【提高题】:编写一个函数,输入 n 为偶数时,调用函数求 1/2+1/4+...+1/n , 当输入 n 为奇数时,调用函数 1/1+1/3+...+1/n
答:
【基础题】:手机品牌存放在一个列表中 brandlist = ['华为','苹果','一加','OPPO','小米'],请实现以下功能:随机选择一个手机品牌屏幕输出
方法1:
import random
brand_list = ['华为', '苹果', '一加', 'OPPO', '小米']
random.seed(0)
brand_name = brand_list[random.randint(0, 4)]
print(brand_name)
方法2:
import random
brandlist = ['华为', '苹果', '一加', 'OPPO', '小米']
name = random.choice(brandlist)
print(name)
方法3:
import random
brandlist = ['华为', '苹果', '一加', 'OPPO', '小米']
print(random.choice(brandlist))
【提高题】:编写一个函数,输入 n 为偶数时,调用函数求 1/2+1/4+...+1/n , 当输入 n 为奇数时,调用函数 1/1+1/3+...+1/n
方法1:
n = int(input("请输入n的值:"))
sum_even = 0
sum_odd = 0
for i in range(1, n + 1):
if i % 2 == 0:
sum_even += 1 / i
else:
sum_odd += 1 / i
if n % 2 == 0:
print(sum_even)
else:
print(sum_odd)
方法2:
num = int(input("输入一个整数:"))
if num % 2 == 0:
out_print = 0
for i in range(2, num + 1, 2):
out_print += 1 / i
print(out_print)
else:
out_print = 0
for i in range(1, num + 1, 2):
out_print += 1 / i
print(out_print)
方法3:
def cal_sum(init_num, n):
sum = 0
for i in range(init_num, n + 1, 2):
print('1/%d + ' % i if i < n else '1/%d = ' % i, end='')
sum += 1 / i
print('', sum)
if __name__ == '__main__':
num = int(input("请输入一个数字:"))
if num % 2 == 0:
init_num = 2
cal_sum(init_num, num)
else:
init_num = 1
cal_sum(init_num, num)
方法4:
import random
phone_brands = ['华为', 'Apple', '一加', 'OPPO', '小米']
print(phone_brands[random.randint(0, 4)])
方法5:
import random
brandlist = ['华为', '苹果', '一加', 'OPPO', '小米']
i = (random.randint(1, 8))
a = i % 5
print(brandlist[a])
Python【每日一问】32的更多相关文章
- [python每日一练]--0012:敏感词过滤 type2
题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...
- Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词
#coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...
- python每日一函数 - divmod数字处理函数
python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...
- 每日一问:Android 消息机制,我有必要再讲一次!
坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...
- 每日一问:谈谈 volatile 关键字
这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...
- 每日一问:讲讲 Java 虚拟机的垃圾回收
昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...
- 每日一问:你了解 Java 虚拟机结构么?
对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...
- 每日一问:LayoutParams 你知道多少?
前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...
- 每日一问:简述 View 的绘制流程
Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...
- python每日一练:0007题
第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...
随机推荐
- Salesforce LWC学习(一)Salesforce DX配置
LWC: Create a Salesforce DX Project and Lightning Web Component:https://www.youtube.com/watch?v=p268 ...
- Java程序员需要掌握的技能
转自:https://www.cnblogs.com/harry335/p/5924505.html
- 记一次CSS反爬
目标网址:猫眼电影 主要流程 爬取每一个电影所对应的url 爬取具体电影所对应的源码 解析源码,并下载所对应的字体 使用 fontTools 绘制所对应的数字 运用机器学习的方法识别对应的数字 在源码 ...
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序 ...
- BUAA-OO-2019 第四单元总结
UML作业架构设计 这一单元的作业本质上是对数据之间的联系进行解析,并重新建立数据结构以方便查询的工作,这就要求我们了解各种UmlElement的结构以及他们之间的关系是如何组织的. 第十三次作业 在 ...
- Delphi中窗体的事件
Delphi中窗体的事件 Form窗体可以响应各种各样的时间,在Object Inspector的Events页面中罗列了一大堆,如下图: 下面将要列出一些常用的事件. 1.OnActivate 当窗 ...
- 将canvas中左上角的原点坐标位置改为左下角
在使用canvas的时候,原点坐标在左上角,这个很犯人,因为一般的坐标基本都是在左下角,即笛卡尔坐标系,那怎么进行转变呢,在这里用到了canvas的translate,rotate,和scale进行转 ...
- js执行上下文栈和变量对象
JavaScript执行上下文栈和变量对象 JS是单线程的语言,执行顺序肯定是顺序执行,但是JS 引擎并不是一行一行地分析和执行程序,而是一段一段地分析执行,会先进行编译阶段然后才是执行阶段. 例子一 ...
- 十九、Python之socket编程
socket(套接字)就是建立连接,发送,接收.大部分网络协议都是建立在socket之上的,例如:http,ftp,smtp等等 socket用于描述IP地址和端口,是一个通信链的句柄.应用程 ...
- 网络编程socket理论一
网络通信理论 首先说下网络之间的通信流程看图 Socket 层是位于运输层和应用层之间的,封装好的,方便使用 Socket 是什么和工作流程 Socket是应用层与TCP/IP协议族通信的中间软件抽象 ...