"""
题目:暂停一秒输出,并格式化当前时间。
""" import sys
import time def answer1():
"""
每隔一秒刷新一下时间 Print是比较多用到的函数,但是很多人对它的详细用法还不是很清楚,今天我们就来一探庐山真面目,详解print的前世今生。
print在Python2.x时代不是一个函数,只是一个关键字。因此那时候print可以这么用:
print " aaa" #输出字符串"aaa"
print 1,2 #输出1,2
print "aaa","bbb" #输出两个字符串
在最后一个object后面加上, 即可实现不换行输出:
print 1,2,
print "aaa","bbb"
输出 :1 2 aaa bbb
进入Python3.x时代,print必须使用括号()。在括号内添加对象,具体用法如下:
print(*objects,sep="",end="\n",file=sys.stdout,flush=False)
1.objects: 之所以是复数,表示可以一次输出多个对象。输出多个对象时,需要用,分隔
举个栗子:
a1="aaa"
a2="bbb"
print(a1,a2,)
输出:aaa bbb
但是如果对象不是变量,而是字符串。可以不用,分隔,此时Python会把两个字符串当做一个输出。再举个栗子:
print("aaa""bbb")
print("aaa","bbb")
输出:aaabbb
aaa bbb
对象输出到流式文件(stream file)--流式文件属于无结构文件,构成文件的基本单位是字符,流式文件是有序字符的集合,其长度为该文件所包含的字符个数,
所以又称为字符流文件。流式文件无结构,且管理简单,用户可以方便地对其进行操作。源程序、目标代码等文件属于流式文件。UNIX系统采用的是流式文件结构。
无结构文件是最简单的文件组织形式。无结构文件将数据按顺序组织成记录并积累保存,它是有序相关信息项的集合,以字节(Byte)为单位。由于无结构文件没有结构,
因而对记录的访问只能通过穷举搜索的方式,故这种文件形式对大多数应用不适用。但字符流的无结构文件管理简单,用户可以方便地对其进行操作。
所以,那些对基本信息单位操作不多的文件较适于釆用字符流的无结构方式,如源程序文件、目标代码文件等。
2.sep=" "
用来间隔多个对象,默认值是一个空格。你可以设置成其他字符。在print函数中,所有非关键字的参数都会被转化成字符型。
举个栗子:
print("aaa""bbb",sep="hello")
print("aaa","bbb",sep="hello")
结果:
aaabbb
aaahellobbb
再次证明了推论:两个字符串不用,隔开就会当做一个字符串。
3.end="\n"
这个参数的作用很明显,用来设定以什么结尾。默认值是换行符,我们可以换成其他字符串。用这个选项可以实现不换行输出:
a1="aaa"
a2="bbb"
print(a1,end="")
print(a2)
结果:aaabbb
我们也可以在end结尾加上换行符:
print("aaa",end="hello\n")
print("aaa","bbb",sep="hello",end="hello")
结果:
aaahello
aaahellobbbhello
4.file=sys.stdout
file指定的对象必须要有写(write)的方法,如果指定的对象没有该方法或者不存在,就会使用默认值。举个栗子:
new=open("new.txt","w")#新建一个对象new,对应的是txt文本,属性可写
print("aaa",end="hello\n",file=new)#输出,file指向该对象,不能指向txt文本文件
结果:在new.txt文本中成功写入字符串。
5.flush=False
该参数只有两个选项--true or false。True表示强制清除缓存,false表示缓存的事情交给文件本身吧。 至此一个小小的print函数终于讲完了,不知道你有没有收获,我是收获挺多的。我们下次再见,亲。
:return:
"""
print("输出一:")
for i in range(10):
time.sleep(1)
print(time.strftime("%Y-%m-%d %H:%M:%S"), sep=" ", end="\r", file=sys.stdout, flush=False)
# time.sleep(1) #放在这里问什么连一条都不显示,奇怪 answer1() def answer2():
"""
answer1,虽然最后是在同一行输出,切覆盖了前面的输出,但是前面的都没有显示,只有最后一次才显示
print的打印,好像需要一行完全完成后才会显示一整行,所以若是end不能\n,则不管你在该条print后
sleep多久,都将不会显示信息,所以上面的方法不能实现我想要的效果 使用两个ANSI.SYS,ANSI.SYS参考资料
https://www.zhihu.com/question/21100416
http://www.jb51.net/article/8197.htm
:return:
"""
print("\n输出二:")
for i in range(10):
print("\r%s%s%s%s" % ("\x1b[1;0m", time.strftime("%Y-%m-%d %H:%M:"), "\x1b[1;31m", time.strftime("%S")), sep=" ", end=",", file=sys.stdout, flush=False)
time.sleep(1)
print("完成") answer2()

  

python学习——练习题(10)的更多相关文章

  1. python 学习笔记 10 -- 正則表達式

    零.引言 在<Dive into Python>(深入python)中,第七章介绍正則表達式,开篇非常好的引出了正則表達式,以下借用一下:我们都知道python中字符串也有比較简单的方法, ...

  2. python学习笔记10(Python的内存管理)

      用这张图激励一下自己,身边也就只有一位全栈数据工程师!!! 32. Python的内存管理 1. 对象的内存使用 对于整型和短字符串对象,一般内存中只有一个存储,多次引用.其他的长字符串和其他对象 ...

  3. Python 学习笔记10

    念念不忘,必有回响. 今天继续学习Python 类.

  4. 从零开始的Python学习Episode 10——函数

    函数 一.函数的创建 简单格式 def function_name(参数表): 函数体 return 如果没有写return,函数会默认返回一个none 二.函数的参数 必需参数: 调用函数时必需参数 ...

  5. python学习——练习题(9)

    """ 题目:暂停一秒输出. 程序分析:使用 time 模块的 sleep() 函数. http://www.runoob.com/python/python-date- ...

  6. Python学习:10.Python装饰器讲解(一)

    情景介绍 一天,在你正在努力加班的时候,老板给交给你了一个任务,就是在这段代码里将所有函数开始输出一个‘hello’最后输出当前时间,再输出一个“end”,这段代码里包含了大量的函数,你会怎么做? d ...

  7. python学习——练习题(4)

    """ 题目:输入某年某月某日,判断这一天是这一年的第几天? """ import datetime import time from fu ...

  8. python学习——练习题(1)

    """ 题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? """ import itertools d ...

  9. python学习笔记10 ----网络编程

    网络编程 网络编程需要知道的概念 网络体系结构就是使用这些用不同媒介连接起来的不同设备和网络系统在不同的应用环境下实现互操作性,并满足各种业务需求的一种粘合剂.网络体系结构解决互质性问题彩是分层方法. ...

随机推荐

  1. Microsoft Office Powerpoint、Visio 已停止工作解决办法

    现象:在使用visio的过程中经常会出现“Microsoft office visio已停止工作”只能将visio关闭:windows可以尝试恢复您的信息并重新启动该程序.office的其他组件不会出 ...

  2. 很让人受教的提高php代码质量的方法

    1.不要使用相对路径 常常会看到: require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. 因此会 ...

  3. apue 2ed 和 unp 3ed 环境配置

    网上虽然有很多配置攻略,但是依然会一头雾水,下面记录我的配置过程. OS. Ubuntu 10.04 LTS 5 首先下载APUE源代码(http://www.apuebook.com/src.tar ...

  4. Unity的 NavMeshObstacle 的使用详解

            这个组件放在场景中的导航网格上,可以阻挡NavMeshAgent的移动.以Unity4.3.4为例.         NavMeshObstacle 分为两种模式,一种是普通模式,通过 ...

  5. 深入了解 WPF Dispatcher 的工作原理(Invoke/InvokeAsync 部分)

    深耕 WPF 开发的各位程序员大大们一定避不开使用 Dispatcher.跨线程访问 UI 当然免不了用到它,将某个任务延迟到当前任务之后执行也会用到它.Dispatcher.Invoke.Dispa ...

  6. npm 可执行模块的开发&&私服发布

    备注:    大家日常在使用npm 安装依赖的时候有一些是命令行工具,比如vue-cli,具体的开发比较简单,同时 可以基于此开发一些脚手架,方便开发. 1. 项目初始化 npm init 备注:按照 ...

  7. MesureDeviceWebServiceDAS

    package com.accu.business.pms.webservice; import java.net.URL; import javax.xml.namespace.QName;impo ...

  8. 基于Oracle的EntityFramework的WEBAPI2的实现(二)——使用DbFirst

    之所以使用DbFirst而没有使用CodeFirst是因为考虑到现实的情况中,我们之所以会选择oracle而不是SQL SERVER,一方面是因为之前公司已经在使用Oracle,而且有好多我们需要用到 ...

  9. 【Leetcode 338】 Counting Bits

    问题描述:给出一个非负整数num,对[0, num]范围内每个数都计算它的二进制表示中1的个数 Example:For num = 5 you should return [0,1,1,2,1,2] ...

  10. FPGA的CNN加速,你怎么看?

    网上对于FPGACNN加速的研究已经很多了,神经网络的硬件加速似乎已经满大街都是了,这里我们暂且不讨论谁做的好谁做的不好,我们只是根据许许多多的经验来总结一下实现硬件加速,需要哪些知识,考虑哪些因素. ...