python_不用循环打印1-1000

题目:屏幕上打印1-1000这1000个数, 不许使用循环语句/条件语句,不许使用?:算符。 不许在源代码中用列举输出语句的办法傻打,比如一千个print语句不行,不再赘述其他傻打行为, 大家都能领会精神。

解答:

import sys
sys.setrecursionlimit(1005)
def pr(n):
  print ‘%d‘ % n
  # t = int(1/(n-1000))
  if n < 1000:
    pr(n+1)
    # return None
  # return None
pr(1)

在网上查了,发现python默认的递归深度是很有限的,大概是900多的样子,当递归深度超过这个值的时候,就会引发这样的一个异常。

解决的方式是手工设置递归调用深度,方式为:

import sys
sys.setrecursionlimit(1000000) #例如这里设置为一百万
时间: 2024-12-28 18:22:49

python_不用循环打印1-1000的相关文章

不用循环,不用递归,从1打印到100

如果不用循环.递归.goto,如何才能用 C++ 从 1 打印到 100 ? 看到这样一篇文章.上面有很多种解法,下面介绍几个好理解一点的: 第一种:在代码中执行系统指令 #include <stdlib.h> int main() {   return system("seq 1 100"); } 第二种:利用信号捕捉 #include <stdio.h> #include <stdlib.h>   #include <unistd.h>

python_字典元素的循环打印

#定义一个字典dic = {'name':'wusan','pwd':27,'sex':'女'} #循环打印出默认的字典元素,实际为key值for item in dic:    print(item) #循环打印出字典中的key值for item in dic.keys():    print(item) #循环打印出字典中的value值     for item in dic.values():    print(item) #循环打印出字典中的键值对for item in dic.item

不用循环游标,一句update代码实现滚动计算

发现一段经典SQL,不用循环游标,一句update代码实现滚动计算结存.为方便理解,结合实例测试之 --1,源数据#t1,jcshl初值为每个sid的当前库存数量,要实现的效果:每个sid的后一结存数量为前一jcshl结存数量-chkshl出库数量 SELECT * FROM #t1 ORDER BY sn sn plh sid chkshl jcshl1 S0002 20.0000 980.00002 S0003 10.0000 1010.00003 S0003 10.0000 1010.00

使用for循环打印矩形和三角形、菱形、空心菱形

打印矩形 **************************************************************************************************** public class Demo3_712 { public static void main(String args[]){ for(int i=1;i<=10;i++){ //控制行 for(int j=1;j<=10;j++){ //控制列 System.out.print(&

用循环打印出多种三角形

打印一排*,很简单,打印下图 也很简单,代码如下: 1 public class Work10_3 { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 // TODO Auto-generated method stub 8 int a=0; 9 while(a<4){ 10 int i=0; 11 while(i<10){ 12 System.out.print("*");

一个整数,大于0,不用循环和本地变量,按照 n, 2n, 4n, 8n 的顺序递增,当值大于5000 时,把值按照指定顺序输出来。

1 package sfbc; 2 /** 3 * 一个整数,大于0,不用循环和本地变量,按照 n, 2n, 4n, 8n 的顺序递增,当值大于5000 4 时,把值按照指定顺序输出来. 5 例: n=1237 6 则输出为: 7 1237, 8 2474, 9 4948, 10 9896, 11 9896, 12 4948, 13 2474, 14 1237, 15 提示:写程序时,先致谢按递增方式的代码,写好递增的以后,再增加考虑递减部分. 16 * @author trfizeng 17

python练习题:循环打印嵌套列表

好久没写博文了,添加一个练习题,选自<head_first_python>~~ python列表:以中括号开始和结束"[]":列表项以逗号","分隔开,使用赋值操作符"="赋予一个标识符.如: movies=["the holy",1975,"terry jones",91,["graham",["michael","john",&qu

c语言:不用if,else语句,也不用循环条件等,输入一个字符,判断是否为大写字母

不用if,else语句,也不用循环条件等,输入一个字符,判断是否为大写字母,如果是,就转换成小写字母:否则不转换.最后输出得到的这个字符. 程序: #include<stdio.h> int main() { char ch; printf("请输入一个字符:"); scanf("%c",&ch); ch = (ch >= 'A'&&ch <= 'Z') ? (ch + 32) : ch; printf("%

【JSP EL】EL表达式 获取list长度/不用循环,EL在List中直接获取第一项的内容/EL获取Map的键,Map的值

1.EL表达式 获取list长度 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> <c:if test="${fn:length(list名字)>1}"&g