python2.7练习小例子(二十四)
24):1、题目:利用递归方法求5!。
程序分析:递归公式:fn=fn_1*4!
#!/usr/bin/python
# -*- coding: UTF-8 -*- def fact(j):
sum = 0
if j == 0:
sum = 1
else:
sum = j * fact(j - 1)
return sum print fact(5)
以上实例输出结果为:
120
python3 参考方案:
def Factorial(n):
if n == 1:
fn=1
else:
fn = n*Factorial(n-1)
return fn
print(Factorial(5))
2、题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
程序源代码:
#!/usr/bin/python
# -*- coding: UTF-8 -*- def output(s,l):
if l==0:
return
print (s[l-1])
output(s,l-1) s = raw_input('Input a string:')
l = len(s)
output(s,l)
以上实例输出结果为:
Input a string:abcde
e
d
c
b
a
使用负数下标:
#!/usr/bin/python
# -*- coding: UTF-8 -*- def desc_output(s):
if(len(s) > 0):
print(s[-1]) # python 负数下标
desc_output(s[0:-1]) s = raw_input('Input a string:')
desc_output(s)
Python3 下非递归,使用各列表的 reverse() 方法:
#!/usr/bin/env python3
S = input('Input a string:')
L = list(S)
L.reverse()
for i in range(len(L)):
print(L[i])
# coding:utf-8
def output(s):
s = list(s)
if len(s) == 0:
return
print(s[len(s) - 1])
s.pop()
output(s) output("abcde")
Python3 下测试:
#!/usr/bin/env python3
s=input("输入一串字符: ")
s=list(s);
for i in range(0,int(len(s)/2)):
t=s[len(s)-i-1];
s[len(s) - i - 1]=s[i]
s[i]=t
print("".join(s))
以下实例,可以支持中文字符:
# encoding:utf-8 '''
Created on 2017年8月14日
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
@author: wangtaoyuan
'''
import sys
reload(sys)
sys.setdefaultencoding("utf8") str = raw_input('请输入:').decode('utf-8')
def reoutput(str):
if len(str) == 0:
return
print str[-1]
str = str[0: len(str) - 1]
reoutput(str)
reoutput(str)
# -*- coding: UTF-8 -*- list = []
for i in range(1,6):
a = input('输入第 {} 个数字:'.format(i))
list.append(a)
list2 = list[::-1]
print(list2)
Python3 测试实例:
s=input("请输入字符:")
for i in range(len(s)-1,-1,-1):
print(s[i],end="")
Python3 测试实例:
def printlast(strinfo, index):
if (index + 1) == len(strinfo):
print(end="")
else:
printlast(strinfo, index + 1)
print(strinfo[index], end="")
printlast("abcdefg", 0)
Python3 参考:
a=[]
for i in range(1,6):
b=input('请输入第'+str(i)+'个字符:')
a.append(b)
def fp(c):
if c==6:
return False
print(a[5-c],end=' ')
fp(c+1)
fp(1)
这两个小例子感觉蛮有意思的,有兴趣的可以练练手。如果感觉不错的话,请多多点赞支持哦。。。
原文链接:https://blog.csdn.net/luyaran/article/details/80064473
python2.7练习小例子(二十四)的更多相关文章
- python2.7练习小例子(十四)
14):题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. 程序分析:程序分析:(a>b)?a:b这 ...
- python2.7练习小例子(十二)
12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...
- python2.7练习小例子(十)
10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1 ...
- python2.7练习小例子(十八)
19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. #!/usr/bin/python # -*- ...
- python2.7练习小例子(十六)
16):题目:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. 程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'. 程序源代码: #!/u ...
- python2.7练习小例子(十五)
15):题目:输出指定格式的日期. 程序分析:使用 datetime 模块. 程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...
- python2.7练习小例子(十九)
19):题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? #!/usr/bin/python # -*- codi ...
- JAVA之旅(二十四)——I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习
JAVA之旅(二十四)--I/O流,字符流,FileWriter,IOException,文件续写,FileReader,小练习 JAVA之旅林林总总也是写了二十多篇了,我们今天终于是接触到了I/O了 ...
- 微信小程序把玩(二十四)toast组件
原文:微信小程序把玩(二十四)toast组件 toast消息提示框,可用在提示一些信息,比如清楚缓存给用户一个友好的提示!或操作一些请求不想让用户有什么操作,toast也可以做到因为toast显示时其 ...
- WCF技术剖析之二十四: ServiceDebugBehavior服务行为是如何实现异常的传播的?
原文:WCF技术剖析之二十四: ServiceDebugBehavior服务行为是如何实现异常的传播的? 服务端只有抛出FaultException异常才能被正常地序列化成Fault消息,并实现向客户 ...
随机推荐
- tensorflow报错 Key Conv/biases not found in checkpoint
可能的解决方法: 删除训练文件夹中的旧模型
- ring0 关于SSDTHook使用的绕过页面写保护的原理与实现
原博:http://www.cnblogs.com/hongfei/archive/2013/06/18/3142162.html 为了安全起见,Windows XP及其以后的系统将一些重要的内存页设 ...
- March 27 2017 Week 13 Monday
A book that remains shut is but a block. 有书闭卷不阅读,无异于一块木头. I had planned to buy a book and read it ev ...
- windows10 、eclipse kepler配置maven环境
maven环境的配置需要先配置Java环境. 一.在wIn10 中配置maven环境,需要先下载maven压缩包,官网http://maven.apache.org/download.cgi,我选择下 ...
- YouTube 1080P高清视频下载方法
在国内在线视频网站还停留在1080P蓝光的时候,YouTube早已经支持4K和8K分辨率的极清视频.虽然4K和8K的清晰度比1080P高了许多档次,但是大部分人的电脑播放4K视频还是很卡的,所以目前来 ...
- 团队的初体验与Scrum的初识
一. 队名及宣言 队名: the better for you 宣言: Change our lives with code 二. 队员及分工 a.承担软件工程的角色 姓名 学号 角色 蒋 婷 B20 ...
- 每天一个linux命令(21):chgrp,chown,chmod
这三个命令都是改变文件属性与权限的,就放一起写了 charp:改变文件所属用户组 chown:改变文件所属者 chmod:改变文件的权限 一个文件对于owner,group ,others有不同的权限 ...
- 2017.9.2Java中的自定义类型的定义及使用&&自定义类的内存图
今日内容介绍 1.自定义类型的定义及使用 2.自定义类的内存图 3.ArrayList集合的基本功能 4.随机点名器案例及库存案例代码优化 01引用数据类型_类 * A: 数据类型 * a: java ...
- GreenPlum 与hadoop什么关系?(转)
没关系. gp 可以处理大量数据, hadoop 可以处理海量. gp 只能处理湖量,或者河量. 无法处理海量. 作者:SallyLeo链接:https://www.zhihu.com/questio ...
- nginx 图片,js,css等文件允许跨域
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ { #允许跨域请求 add_header Access-Control-Allow-Ori ...