python学习--练习题6、7、8--九九乘法表,前两项相加问题,素数输出问题

练习6

#输出9*9乘法表
s=(i*n for i in range(1,10) for n in range(1,10))
print(list(s))

练习7

#题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
一共经历了几个月=int(input("几月:"))
def 多少只兔子():
    s=[1,1]
    for i in range(0,一共经历了几个月+1):
        t=s[i+1]+s[i]
        s.append(t)
        i+=1
        continue
    print(s[一共经历了几个月-1]*2)
多少只兔子()

返回值:几月:2357314

体会:我在 t=s[i+1]+s[i]

s.append(t)这个代码这花费了很长时间,总是用s[i+2]=s[i+1]+s[i]来跑程序,总是提示我超了,我干脆就用t来表示,这样append的时候也方便很多。

练习8

#判断101-200之间有多少个素数,并输出所有素数。

#python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素
s=set(( n for n in range (101,201) for k in range (2,n) if n%k==0 ))
t=set((n for n in range(101,201)))
print(sorted(t-s))

返回值:[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]

体会:set用于解包,sorted用于排列

我在第一行代码花费时间最多,主要是没有加set时,导致输出都是相同的数据(真的是好烦啊!),用了set不仅可以删除还可以加加减减,减值就是元组必备,神清气爽!

同时,http://blog.csdn.net/business122/article/details/7541486# 有详细的符号说明

a = t | s          # t 和 s的并集

b = t & s          # t 和 s的交集

c = t – s          # 求差集(项在t中,但不在s中)

d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)

原文地址:https://www.cnblogs.com/xurui89/p/10505884.html

时间: 2024-10-11 20:33:43

python学习--练习题6、7、8--九九乘法表,前两项相加问题,素数输出问题的相关文章

九九乘法表的两种写法

九九乘法表的写法: 1 #!/usr/bin/env python 2 #coding:utf8 3 y = 1 4 f = lambda x,y:str(x)+' x '+str(y) #使用lambda写法 5 while(y<10): 6 for x in range(1,y+1): 7 #print x ,'x',y,"\t", #常规写法 8 print f(x,y),"\t", #调用lambda 9 print "\n" 10

打印九九乘法表的两种方法

#1.for循环 rows,cols = xrange(1,10),xrange(1,10) row,col = 1,1 for row in rows: for col in cols: if col <= row: print '%d*%d=%d\t' % (col,row,col*row), #\t代表tab键, 逗号确保同rows在同一行 print #打印空格,确保同col在同一列 可以简化为: for rows in xrange(1,10): for cols in xrange(

C实现的九九乘法表

为了加深对C语言中for循环的理解,学习实例写出了九九乘法表,相对来说比较简单. #include <stdio.h> /************************************** * 本实例用于输出一个九九乘法表 * 用于继续练习for语句 **************************************/ int main(void) { /** * 主要思想: * 从1开始计算,1x1 * 2x1,2x2 * 3x1,3x2,3x3 * 以此循环,变量i从1

Python3 九九乘法表

#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:sking #Python3 九九乘法表 import string for i in range(1, 10): for j in range(1, i+1): print(f' {j}*{i}={i*j}', end='') print() 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10

Python实现不同格式打印九九乘法表

前言:最近在学习Python,学习资源有慕课网上的视频教程.菜鸟教程以及Python官方文档tutorial.虽然了解了Python的基本语法,但是还没有真正意义上输出自己写的代码.代码小白,之前仅学过C,代码上的逻辑问题总是理不清楚,加上性格有点急躁,以前总是半途而废,所以编程等级为渣.现在虽然刚开始做测试工作,但是不希望自己的工作仅限于功能测试,也希望能接触到性能测试甚至白盒测试这样对编程有一定要求的工作.由于目前测试的项目性质属于web测试,所以从现在的工作入手,开始学习Python以及数

python 九九乘法表 while循环打印

Python中九九乘法表从四个不同方向打印的方法:这里用while循环来实现,双层循环是必须的 #左下角九九乘法表: i=1 while i < 10: j=1 while j <= i: print("%d*%d=%2d "%(j,i,i*j),end="")   #控制输出的格式 j+=1 i+=1 print()  #打印完一行进行换行 #左上方九九乘法表: i=9 while i > 0: j=1 while j <= i: prin

python实现不同格式九九乘法表

通过Python实现了输出长方形完整格式.左上三角形.右上三角形.左下三角形以及右下三角形五种格式的九九乘法表. 1.长方形完整格式 代码: 1 #完整格式输出九九乘法表 2 for i in range(1,10): 3 for j in range(1,10): 4 print("%d*%d=%2d" % (i,j,i*j),end=" ") 5 print("") 输出内容: 2.左上三角形 代码: 1 #左上三角格式输出九九乘法表 2 f

python九九乘法表和打印图形程序

一.打印九九乘法表: #coding:utf-8 for i in range(1,10):     for j in range(1,i+1):         print("%dx%d=%d") %(j,i,j*i),     print '\n' 结果: 二.打印正方形 实体正方形 代码: #coding:utf-8 rows=int(raw_input("输入正方形边长:")) for i in range(rows):     for j in range

用Python实现九九乘法表

1.用“#”组成的矩形的实现 代码 1 eight = int(input("Height:")) #用户输入高度 2 width = int(input("Width:")) #用户输入宽度 3 4 num_height = 1 5 while num_height <= height: 6 num_width = 1 7 while num_width <= width: 8 print("#",end="")