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 ...
随机推荐
- C# winform窗体简单保存界面控件参数到xml
引用网上的 XMLHelper 地址 :https://www.cnblogs.com/chnboy/archive/2009/04/02/1427652.html 稍做修改 using System ...
- HttpClient到底该不该using?
HttpClient实例是否应该释放掉? 从源代码中可以的看到httpClient类最上层实现了IDisposable接口,看到该接口我们下意识就是要用using(自动释放)代码块包含起.或者自己手动 ...
- loadrunner:Action.c(4): Error -27796: Failed to connect to server "10.8.251.101:10086": [10060] Connection timed out
Action.c(4): Error -27796: Failed to connect to server "10.8.251.101:10086": [10060] Conne ...
- asp.net core 在centeros 7.x下创建服务
Netcore服务生成说明 如有个项目/opt/wwwroot/dpms.1633.com 启动为/usr/bin/dotnet /opt/wwwroot/dpms.1633.com/DPMS.Web ...
- 机甲大师S1机器人编程学习,Windows 10 安装Scratch和简单实例学习
机甲大师S1支持 Scratch 3.0以上版本. Scratch官方网址:https://scratch.mit.edu/ 最新版本为3.4.0 今天在Windows 10上,安装最新版本. 1. ...
- es6中的arrowfunction
es6新增箭头函数,主要解决了以下几点问题 函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象. 不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误. 不可以使用 ...
- FreeMarker学习系列之一
一. 基本概念 ${...}: FreeMarker将会输出真实的值来替换大括号内的表达式,这样的表达式插值 FTL 标签 (FreeMarker模板的语言标签): FTL标签和HTML标签有一些相似 ...
- current transaction is aborted, commands ignored until end of transaction block
current transaction is aborted, commands ignored until end of transaction block Error updating datab ...
- mysql的常用查询创建命令
查看所有数据库Show databases;创建数据库Create database 数据库名删除数据库Drop database 数据库名创建表CREATE TABLE t_bookType( ...
- Reactive-MongoDB 异步 Java Driver 解读
一.关于 异步驱动 从3.0 版本开始,MongoDB 开始提供异步方式的驱动(Java Async Driver),这为应用提供了一种更高性能的选择.但实质上,使用同步驱动(Java Sync Dr ...