python100例详解(python经典100题)

http://www.itjxue.com  2023-04-02 01:16  来源:未知  点击次数: 

Python挑战100题(14~20)

题目:给你个小写英文字符串a和一个非负数b(0=b26), 将a中的每个小写字符替换成字母表中比它大b的字母。这里将字母表的z和a相连,如果超过了z就回到了a。

例如a="cagy", b=3,

则输出 :fdjb

提示: ord('a') = 97, ord('b') = 98, chr(97) = a

参考答案:

题目:给你一个字符串a和一个正整数n,判断a中是否存在长度为n的回文子串。如果存在,则输出YES,否则输出NO。

回文串的定义: 记串str逆序之后的字符串是str1,若str=str1,则称str是回文串,如"abcba".

参考答案:

题目:给你两个时间st和et(00:00:00=st = et=23:59:59), 请你给出这两个时间间隔的秒数。

如:st="00:00:00", et="00:00:10", 则输出10.

参考答案:

方法一:切片

方法二:time模块

题目:给你一个时间t(t是一个字典,共有六个字符串key(year,month,day,hour,minute,second),值为每个值为数字组成的字符串,

如t={'year':'2013','month':'9','day':'30','hour':'16','minute':'45','second':'2'}

请将其按照以下格式输出, 格式:XXXX-XX-XX XX:XX:XX。如上例应该输出: 2013-09-30 16:45:02。

参考答案:

方法一:利用datetime模块

方法二:一行

题目:给你一个整数组成的列表L,按照下列条件输出:

若L是升序排列的,则输出"UP";

若L是降序排列的,则输出"DOWN";

若L无序,则输出"WRONG"。

参考答案:

题目:一个环形的公路上有n个加油站,编号为0,1,2,...n-1,

每个加油站加油都有一个上限,保存在列表limit中,即limit[i]为第i个加油站加油的上限,

而从第i个加油站开车开到第(i+1)%n个加油站需要cost[i]升油,cost为一个列表。

现在有一辆开始时没有油的车,要从一个加油站出发绕这个公路跑一圈回到起点。

给你整数n,列表limit和列表cost,你来判断能否完成任务。

如果能够完成任务,输出起始的加油站编号,如果有多个,输出编号最小的。

如果不能完成任务,输出-1。

参考答案:

构造新的limit和cost并遍历,来源

题目:给你一个整数列表L,判断L中是否存在相同的数字,

若存在,输出YES,否则输出NO。

参考答案:

python中如何编程求1到100之间的素数

#!/usr/bin/python

#-*- coding:UTF-8 -*-

#求素数

list=[]

i=2

for i in range (2,100):

? j=2

? for j in range(2,i):

? ? ? if(i%j==0):

? ? ? ? ? break

? else:

? ? ? list.append(i)

print(list)

扩展资料:

python:for语句的使用方法

for循环的语法格式:

for i in range(n):#从数据类型中拿一个值赋值给i

? print(i)#打印i

例如:

#for

for i in range (1,6,2):#从一开始到六之前每隔上2个数字

? print(i)#结果为1,3,5

# ------------------------------------------------

s = ["man", "woman", "girl", "boy", "sister"]

for i in s:#列表s中的每个元素给i

? print(i)

#-------------------------------------------------

for i in range(5):

? print(i)#结果为:0,1,2,3,4

for循环实例:数字0,1,2组成一个百位数,并且数字不重复!

#for

for i in range(0,3):

? for j in range(0,3):

? ? ? for k in range(0,3):

? ? ? ? ? if (i != 0) and (i != j) and (i != k) and (j != k):

? ? ? ? ? ? ? print (i,j,k)

python找出2到100中所有的孪生素数?

孪生素数是指相邻两个素数之间差为2的素数对。为了找出2到100中的所有孪生素数,我们可以使用Python编程语言中的循环和判断语句。

以下是一个Python代码示例,用于找出2到100中的所有孪生素数:

# 定义一个函数,用于判断一个数是否为素数

def is_prime(num):

if num = 1:

return False

for i in range(2, int(num**0.5)+1):

if num % i == 0:

return False

return True

# 遍历2到100中的每个数,判断它和它+2是否都为素数

for i in range(2, 99):

if is_prime(i) and is_prime(i+2):

print(i, i+2)

这个程序会输出以下结果:

3 5

5 7

11 13

17 19

29 31

41 43

59 61

71 73

这些数字都是2到100中的孪生素数,它们的相邻两个素数之间的差都为2。

标普100案例分析 —— 带着Python玩金融(5)

本文将带着你使用Python对标普100数据进行简单的分析,你会学到:

标准普尔100指数 用来衡量大公司的股票表现,它由多个行业的100家主要公司构成。2017年标普100在各行业的比例如下图所示。

本文将要分析的数据如下表所示,它由四列数据构成,分别是公司名(Name),行业(Sector),股价(Price)和每股盈余(EPS)。

我们将这四列数据分别存储在四个Python列表中。

先来用切片的方法观察下数据。比如查看前四家公司的名称。

或者输出最后一家公司的所有信息。

市盈率 (Price to Earnings ratio),也称股价收益比率,由股价除以每年度每股盈余(EPS)得到,它是用来衡量股价水平是否合理的指标之一。

为了方便计算市盈率,我们首先将数据从Python列表类型转换为NumPy数组。

NumPy数组的优势是它可以直接对数组进行运算,而这一点Python列表是做不到的。比如计算市盈率 pe ,我们可以直接将数组 prices 除以数组 earnings 。

接下来我们就具体行业来进行分析,比如对于IT行业,我们首先需要筛选出哪些公司属于这一行业。

用同样的方法,筛选出必需消费品行业的公司和市盈率。

筛选出IT和必需消费品行业的数据后,我们来计算这两个行业市盈率的均值和标准差。

首先用散点图来观察这两个行业中每一家公司的市盈率。这里使用Python中常用的绘图工具包 matplotlib 。

我们注意到,上图的右上角有一IT公司的市盈率特别高。若某股票的市盈率高于同类股票,往往意味着该股有较高的增长预期。所以让我们进一步来观察IT行业的市盈率分布,在这里直方图可以用来查看数据的分布情况。

现在可以更直观的看到在直方图的右侧有一离群值,它具有很高的市盈率。我们可以使用布尔索引找到这家市盈率很高的公司。

注:本文是 DataCamp 课程 Intro to Python for Finance 的学习笔记。

python编程:输入一个自然数n,如果n为奇数,输出表达式1+1/3+…+1/n的值

def summ(n):

if n%2:

m=1

else:

m=2

return round(sum([1/x for x in range(m,n+1,2)]),2)

print(summ(5))

python求1+2+3+....+n的和

可以使用循环来求1+2+3+....+n的和,具体代码如下:

n = int(input("请输入一个正整数n: "))

# 初始化变量sum为0

sum = 0

# 使用for循环求和

for i in range(1, n+1):

sum += i

print("1+2+3+...+n的和为:", sum)

在上面的代码中,我们首先输入一个正整数n,然后使用for循环求1+2+3+....+n的和。在循环中,我们使用变量sum来保存当前的和,每次将i加到sum中。最后,我们输出sum的值,即为1+2+3+....+n的和。

除了使用循环,还可以使用数学公式求解1+2+3+....+n的和,公式为:n*(n+1)/2。因此,我们可以直接使用该公式求解,代码如下:

n = int(input("请输入一个正整数n: "))

# 使用公式求和

sum = n*(n+1)//2

print("1+2+3+...+n的和为:", sum)

在上面的代码中,我们首先输入一个正整数n,然后使用公式n*(n+1)/2来求1+2+3+....+n的和,最后输出结果。需要注意的是,由于除法运算可能得到浮点数结果,因此需要使用整数除法//来避免得到浮点数结果。

(责任编辑:IT教学网)

更多

推荐通讯数据软件文章