Python:每日一题007
题目:
输出 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的更多相关文章
- Python每日一题 007
题目 你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词. 很难客观的说每篇日记中最重要的词是什么,所以在这里就仅仅是将每篇日记中出 ...
- Python每日一题 004
将 0001 题生成的 200 个激活码(或者优惠券)保存到 Redis 非关系型数据库中. 代码 import redis import uuid # 创建实例 r=redis.Redis(&quo ...
- Python每日一题 003
将 002 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中. 代码 import pymysql import uuid def get_id(): for i in ra ...
- Python每日一题 002
做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)? 在此生成由数字,字母组成的20位字 ...
- Python每日一题 009
题目 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. 代码 参照网络上代码 # coding: utf-8 import os import re # ...
- Python每日一题 008
题目 基于多线程的网络爬虫项目,爬取该站点http://www.tvtv.hk 的电视剧收视率排行榜 分析 robots.txt User-agent: Yisouspider Disallow: / ...
- Python每日一题 006
题目 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小. 如果只是单纯的通过将图片缩放到iPhone5分辨率大小,显然最后呈现出来的效果会很糟糕.所以等比例缩放到长( ...
- Python每日一题 005
任一个英文的纯文本文件,统计其中的单词出现的个数. 代码 # coding:utf-8 import re def get_word(filename): fp=open(filename," ...
- Python每日一题 001
Github地址:https://github.com/Yixiaohan/show-me-the-code Talk is Cheap, show me the code. --Linus Torv ...
随机推荐
- 错误 CS0006 Metadata file 'E:\项目名称\xxxx.dll'
错误 CS0006 Metadata file 'E:\桌面临时文件\Pos\xxxx.dll' 1.找到这个类库在当前类库右键发生 找到 应用程序-->把程序集名称改成提示错误 的名称 2.找 ...
- 知识点:Mysql 基本用法之流程控制
流程控制 一. 条件语句 if 语句实例: delimiter // CREATE PROCEDURE proc_if () BEGIN declare i int default 0; if i = ...
- 爬虫——requests模块
一 爬虫简介 #1.什么是互联网? 互联网是由网络设备(网线,路由器,交换机,防火墙等等)和一台台计算机连接而成,像一张网一样. #2.互联网建立的目的? 互联网的核心价值在于数据的共享/传递:数据是 ...
- REST framwork之解析器
一 我们首先要知道解析器是什么以及他的功能: REST framework 包含许多内置的解析器类,允许接受各种媒体类型(media types)的请求.还支持自定义解析器,这使你可以灵活地设计 AP ...
- Android开发 assets目录
Android资源文件分类: Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: 这种资源文件系统会在R.Java里面自动生成该资源文件的ID,所以访问这种资源文件 ...
- 阿里云 配置ssl 在nginx上
写给自己的备忘录: 很乱 如果你也是 配置nginx ssl 可以给我留言 ,我是为了 捣鼓微信小程序后台 需要https 阿里云有免费一年的 ssl服务 链接 https://www.aliyun. ...
- win7 64 位 + vs2015 + opencv3.2
下载OpenCv_3.2_vc14 链接:http://pan.baidu.com/s/1eSBu1NG 密码:104g 1.下载好后,进行解压到自己指定的目录: 解压后可以得到: 2.添加环境变量 ...
- Thrift 的五种工作模式
一.thrift 共有5中工作模式,分成阻塞和非阻塞: 阻塞:TSimpleServer.TThreadPoolServer 非阻塞:TNonblockingServer.THsHaServer.TT ...
- Openface 入门
Openface 简单入门 背景 Openface是一个开源的人脸识别框架,同类软件产品还有 seetaface ,DeepID等,当然,如果算上商业的产品,那就更多了. Openface人脸比对结果 ...
- C# 调用程序集方法
加载程序集 (Assembly类) 使用 Assembly 类可以加载程序集.浏览程序集的元数据和构成部分.发现程序集中包含的类型以及创建这些类型的实例 // 加载该路径的程序集 Assembly a ...