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 ...
随机推荐
- Libs - 软件下载网站
下载首页 > 网络工具 > FTP-工具 > 软件列表 http://down.tech.sina.com.cn/list/29_4_9.html
- codeforces467-A水题
题目链接:http://codeforces.com/problemset/problem/467/A A. George and Accommodation time limit per test ...
- A - A Compatible Pair-biaobiao88
A - A Compatible Pair Nian is a monster which lives deep in the oceans. Once a year, it shows up on ...
- CSS 总结 [目录]
一.CSS 基础 1.CSS 初识 2.CSS 用法和特性 二.CSS 选择器 1.基本选择器 2.组合选择器 3.属性选择器 4.伪类选择器 5.伪元素选择器 三.CSS 字体样式 四.CSS 文本 ...
- nodeJs 报maximum call stack size exceeded js
先看错误 查了下资料说是什么js堆栈异常,是递归造成的啥的,但我程序里没用到啥递归,整了老半天将collection-repeat换成ng-repeat然后就好啦,具体原因待探讨.
- Spark GraphX图计算核心算子实战【AggreagteMessage】
一.简介 参考博客:https://www.cnblogs.com/yszd/p/10186556.html 二.代码实现 package graphx import org.apache.log4j ...
- ORACLE百分比分析函数RATIO_TO_REPORT() OVER()
有时候不用的指标的绝对值不能比,但是转转为百分比的形式就容易看出波动了,是数据分析的好用的一个分析函数 20:00:24 SYS@orcl> conn scott/tiger; Connecte ...
- Java八大排序之基数排序
基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分 ...
- MySQL小测试(2)
2.创建一个stu表,字段有:自增主键id,不为空姓名,默认值性别(枚举类型),无限制身高 create table stu( id int primary key auto_increment, n ...
- pydev离线安装及安装后eclipse中不显示解决办法
eclipse插件安装方法(离线安装)pydev进入eclipse目录1.创建links目录2.复制压缩包到目录前解压3.在links目录下新建pydev.link文件(记事本修改后缀名即可)4.py ...