题目:

输出 9*9 乘法口诀表。

程序分析:

分行与列考虑,共9行9列,i控制行,j控制列。

个人思路及代码:

第一版:

  for i in range(1,10):
for j in range(1,10):
print(" %s*%s=%s"%(i,j,i*j),end='')

  

第二版

  for i in range(1,10):
for j in range(1,10):
print("%d*%d=%2d " % (j, i, i * j),end="") #注意这里的i,j调换了位置
print() #这里换行表示每取完一个i值后进行换行,print自带换行

  

分析:for i in range(1,10)表示i可以取值到1-9,

当i=1时,j可以取值到1-9,

当i=2时,j可以取值到1-9,

当i=3时,j可以取值到1-9,

...

当i=9时,j可以取值到1-9,

输出结果是这样的

这里可以加入判断条件限制输出

第三版

  for i in range(1,10):
for j in range(1,10):
if j <= i:
print("%d*%d=%2d " % (j, i, i * j),end="")
print()

  

输出结果

其他参考解答

解答1:

  
  for i in range (1,10):
for j in range(1,10):
print(j,"x",i,"=",i*j,"\t",end="")
if i==j:
print("")
break #注意这里的break的使用

  

分析:当i=1时,j只能取值到1,之后换行,当i=2时,j只能取值到2,依次类推,输出乘法表。

解答2

  
  for i in range(1,10):
for j in range(1,i+1):
print("%d*%d=%2d "%(j,i,i*j),end="")
print()

  

分析:这里的j取值是根据i来进行取值的,即当i = 1时,j只能取值1,当i=2时,j可以取值1、2,与上面的代码的核心是控制j的取值范围。

解答3

  
  print ('\n'.join([' '.join(['%s*%s=%-2s' % (j,i,i*j) for j in range(1,i+1)]) for i in range(1,10)]))

  

分析:将上面的解答2转成列表解析式的形式一行输出。

解答4

  i=0
j=0
while i<9:
i+=1
while j<9:
j+=1
print(j,"x",i,"=",i*j,"\t",end="")
if i==j:
j=0
print("")
break

  

(本文编号007,首发于2018年9月17日,修改于2018年9月18日)

Python:每日一题007的更多相关文章

  1. Python每日一题 007

    题目 你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词. 很难客观的说每篇日记中最重要的词是什么,所以在这里就仅仅是将每篇日记中出 ...

  2. Python每日一题 004

    将 0001 题生成的 200 个激活码(或者优惠券)保存到 Redis 非关系型数据库中. 代码 import redis import uuid # 创建实例 r=redis.Redis(&quo ...

  3. Python每日一题 003

    将 002 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中. 代码 import pymysql import uuid def get_id(): for i in ra ...

  4. Python每日一题 002

    做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)? 在此生成由数字,字母组成的20位字 ...

  5. Python每日一题 009

    题目 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. 代码 参照网络上代码 # coding: utf-8 import os import re # ...

  6. Python每日一题 008

    题目 基于多线程的网络爬虫项目,爬取该站点http://www.tvtv.hk 的电视剧收视率排行榜 分析 robots.txt User-agent: Yisouspider Disallow: / ...

  7. Python每日一题 006

    题目 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小. 如果只是单纯的通过将图片缩放到iPhone5分辨率大小,显然最后呈现出来的效果会很糟糕.所以等比例缩放到长( ...

  8. Python每日一题 005

    任一个英文的纯文本文件,统计其中的单词出现的个数. 代码 # coding:utf-8 import re def get_word(filename): fp=open(filename," ...

  9. Python每日一题 001

    Github地址:https://github.com/Yixiaohan/show-me-the-code Talk is Cheap, show me the code. --Linus Torv ...

随机推荐

  1. 我是一个录像机(NVR)

    我是一个网络录像机,简称NVR.我的前辈是DVR,我们的区别很简单,DVR接的是模拟摄像机,我连接的是IP摄像机. 我的前辈DVR比我辛苦,因为模拟摄像机的模拟信号连过来之后,他要进行数字化.编码压缩 ...

  2. [转]MySQL group_concat设置group_concat_max_len

    GROUP_CONCAT函数用于将多个字符串连接成一个字符串,在拼接成字符串时就会存在拼接长度的问题,mysql 默认的拼接最大长度为1024 个字节,由于1024个字节会出现不够用的情况,所以有时需 ...

  3. Power Designer 转C#实体类方法

    1.打开Power Designer菜单 Tools,选择如图    2.弹出方框中选择PD安装目录下的如图地址 3.object language选择正确目录后,可选如图语言,如C#.再填写name ...

  4. 20165312 2017-2018-2《Java程序设计》课程总结

    20165312 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:我期望的师生关系 预备作业2:C语言基础调查和java学习展望 预备作业3:Linux安 ...

  5. [sharepoint]修改Item或者File的Author和Editor

    写在前面 最近项目中调用sharepoint rest api方式获取文件或者Item列表,而用的方式是通过证书请求,在上传文件,或者新建item的时候,默认的用户是在sharepoint端注册的用户 ...

  6. 杂谈2.py

    tuple用圆括号括住的项的列表,这些项不能改变,括号内的值都是相关的 dictionary 已经配对的键和值的列表,用花括号括住 当创建对象并在其中存储信息的时候变量的类型就确定啦 type(obj ...

  7. Linux下载命令之rpm和yum比较

    RPM和YUM比较 rpm 是linux的一种软件包名称,以.rmp结尾,安装的时候语法为:rpm -ivh,rpm包的安装有一个很大的缺点就是文件的关联性太大,有时候装一个软件要安装很多其他的软件包 ...

  8. js类的继承,es5和es6的方法

    存在的差异:1. 私有数据继承差异 es5:执行父级构造函数并且将this指向子级 es6:在构造函数内部执行super方法,系统会自动执行父级,并将this指向子级2. 共有数据(原型链方法)继承的 ...

  9. 批量IP自动ping脚本

    批量IP自动ping脚本ping.sh 在同一目录新建一个名为pingip的文件,并以每行一个IP的方式罗列.使用sh命令执行ping.sh #!/bin/bash IP_LIST=`cat ping ...

  10. FTP管理常用命令

    #新增用户liuhui,指定群组为groupa,附加群组为groupb,家目录为/ftp/groupbuseradd -g groupa -G groupb -d /ftp/groupb linhui ...