python编程100例题(python编程题目及答案)

http://www.itjxue.com  2023-03-02 21:17  来源:未知  点击次数: 

python编程实例——求满足条件的三位数

求满足如下条件的3位正整数,它除以9的商等于它的个位数字的平方和。例如224,它除以9的商为24,它的每一位数(2、2和4)的平方和也是24。

算法思路:首先,我们用range函数遍历所有的3位数,按照range(x,y)函数的语法规则,要包含所有的3位整数100~999,range函数的参数x、y应该分别取值为100和1000,即range(100,1000),然后分别计算3位数的个位、十位和百位数。计算的方法可以参考下面代码的变量a、b和c的计算方法,然后再计算出它们的平方和,最后,比较每位数的平方和是否等于此数除以9的商,如果是就输出这个数。代码如下:

程序运行结果:

132

224

315

453

535

561

635

661

753

805

815

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到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基础题 真心求解

sep="|",字符串中间用"|"隔开

end="#",字符串末尾加上"#"

所以第一个显示Hello|100#,第二个显示您好,所以是

D.Hello|100#您好

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编程题

斐波那契数列自第三个数开始,每个数均为之前两个数的和。

至少有两种方法来实现它。

最常见的利用迭代的方法,其核心思路是

fib(n) =?fib(n-1) +?fib(n-2)

而在n2时直接,没有n-2,因此直接返回1:

def fib(num): return 1 if n2 else fib(num-1) + fib(num-2)

这是一种很简单的实现。在阶梯数不大时,它很好用。当阶梯数很大时,因为二次手迭代,会比较慢。因此,可以在计算中保存中间值(1至n-1的阶梯数)来减少计算量:

这种方式在计算阶梯数10000时就可以保持不错的性能。如果需要多次计算该数列,则可以利用对象来保持这个中间值列表,下列代码中,Fibonaci实例只计算未曾计算的阶梯数,在重复调用时它更具优势:

class Fibonaci(object):

....history=[1, 1]

....def cacl(self, num):

........while len(self.history) = num:

............self.history.append(self.history[-1] + self.history[-2])

........return?self.history[num]

if __name__ == '__main__':

....fib =?Fibonaci()

....print(fib.calc(100))

....print(fib.calc(32))

....print(fib.calc(10000))

(责任编辑:IT教学网)

更多

推荐Dreamweaver教程文章