广告
返回顶部
首页 > 资讯 > 后端开发 > Python >3.格式IO
  • 534
分享到

3.格式IO

格式IO 2023-01-31 07:01:54 534人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

一.格式化输出:printf()1.不要忘记给格式控制字符串后面的列表中的每个项目都用一个转换说明。Print(“%d%d”,num);//这是错误的2.Printf()函数打印列表中使用的是值,而不管是变量常量还是表达式如果要打印%本身,

一.格式化输出:printf()

1.不要忘记给格式控制字符串后面的列表中的每个项目都用一个转换说明。

Print(“%d%d”,num);//这是错误的

2.Printf()函数打印列表中使用的是值,而不管是变量常量还是表达式

如果要打印%本身,则用%%替代。

3.printf函数不会进行任何类型转换(包括隐式转换),它只是从内存中读出你所提供的元素的值(按照%d,%f等控制字符提示的格式)

4.格式化规定符

━━━━━━━━━━━━━━━━━━━━━━━━━━

符号作用

——————————————————————————

%d 十进制有符号整数

%u 十进制无符号整数

%f 浮点数

%s 字符串

%c 单个字符

%p 指针(地址)的值

%e 指数形式的浮点数

%x,%X 无符号以十六进制表示的整数

%0 无符号以八进制表示的整数

%g 自动选择合适的表示法

━━━━━━━━━━━━━━━━━━━━━━━━━━

5.一些特殊字符

━━━━━━━━━━━━━━━━━━━━━━━━━━

字符作用

——————————————————————————

\n 换行

\f 清屏并换页

\r 回车

\t Tab符

\xhh 表示一个ASCII码用16进表示, 

其中hh是1到2个16进制数

━━━━━━━━━━━━━━━━━━━━━━━━━━

6.格式规定符说明

1)对于d%

(1)%md: 指定输出的宽度。数据位数小于m,左端补空格;大于m,按实际位数输出。比如说%3D 表示输出3位整型数,不够3位右对齐。

a=123;b=12345;

printf("%4d,%4d",a,b);

输出结果为:_123,12345 

若想在输出值前加一些0,就应在场宽项前加个0。例如%04d 表示在输出一个小于4位的数值时,将在前面补0使其总宽度为4位。

(2)%ld: 输出长整型数据。比如下面的就不能用%d。

long a=123456;

printf("%ld",a); 

printf("%9ld",a); 输出结果为:___123456

(3)%-md:

可以控制输出左对齐,即在"%"和字母之间加入一个"-" 号可,没有说明则右对齐。

比如:%-7d 表示输出7位整数左对齐

2)对于f%

(1)%m.nf

表示最大场宽m,小数位为n位,整数位则为m-n-1位,够m位右对齐。

比如:%9.2f 表示输出场宽为9的浮点数,其中小数位为2,整数位为6,小数点占一位,不够9位右对齐。

(2)%-m.nf可以控制输出左对齐。

(3)%lf 表示输出double浮点数。

3)对于%s,%e同样道理

%-10s 表示输出10个字符左对齐,没有说明则右对齐。

%8s 表示输出8个字符的字符串,不够8个字符右对齐。

%6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9,则第9个字符以后的内容将被删除。

4)其它注意

(1)超过说明的场宽

如果字符串的长度或整型数位数超过说明的场宽,将按其实际长度输出。对浮点数,若整数部分位数超过了说明的整数位宽度,将按实际整数位输出。若小数部分位数超过了说明的小数位宽度,则按说明的宽度以四舍五入输出。

 

(2)浮点数表示字符或整型量的输出格式,如%6.9s 和%6.9d

如果用浮点数表示字符或整型量的输出格式,小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。若大于最大宽度,则最大宽度以后的内容将被删除。

比如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9,则第9个字符以后的内容将被删除。

 

7.可以在%和定义转换字符之间通过插入修饰符为基本的转换说明加以修改。

%+6.2:显示正号

%010d:长度10,达不到10,左边补0

%4d:字段宽度最小值为4,小于4,右对齐

%-4d:字段宽度最小值为4,小于4,左对齐

%5.2f:浮点型精度

%hu、%6.4hd:h和整数转换说明符一起,表示一个长整型

%ld、%8lu:l和整型转换说明符一起,表示长整型。

%lld、%8llu:ll和整数转换说明符一起,表示long long型或unsight long long 型。

8.四个printf函数

9.%g的对比测试

10.

二.格式输入:scanf()

1.sanf函数族用于分析输入字符串,并将字符序列转换成指定类型的变量。格式之后的参数包含了变量的地址,用于转换结果初始化这些变量。

2.一般形式:scanf(“格式控制字符串”,变量地址列表)

格式控制字符串:用于控制输入数据格式,必须以引号引导,内容由一个或多个格式控制字符组合而成,也可以含有非格式控制字符,非格式控制字符称为普通字符。普通字符按原样在对应位置输入。

变量地址列表:用于指定存放数据的变量地址。如果需要给多个变量输入数据,则各变量地址要用逗号隔开。变量地址表示方式是:&变量名。例如,&a表示变量a的地址。

3.Scanf()的隐式类型匹配

4.Scanf()只从缓冲区中获取数据,当缓冲区中有数据时,不会等待用户输入

解决的方法是使用:while(getchar()!=’\n’); 清空缓冲区中的数据。

5.格式控制

1)格式字符

格式字符串形式为:%【*】【width】【F|N】【h|l】type

与printf函数的格式符有相同之处,也有不同之处。

1*为输入赋值抑制字符,表示该格式说明要求输入数据,但不赋值,也即在地址列表中没有相应的地址项,例如:

scanf(“%3d%*5d%f”,&a,&x);

如果执行时输入:

2001200 4.1

则200传给a,4.1传给x,1200不赋给任何变量。

2width为宽度指示符,表示该输入项最多可输入的字符个数。如遇空格或不可转换的字符,读入的字符将减少,例如:

scanf(“%3d%5d%f”,&a,&x);

如果执行时输入:

2001200 4.1

则200传给a,1200传给b,4.1传给x。

“%3d”控制第一个数据只取3个字符转换成整型数200;“%5d”控制第二个数据,但从输入流中截取4个字符后,遇到空格,因此第二个数据只得到了4位数。

2)普通字符

与printf函数的普通字符不同,scanf的格式控制字符串中普通字符是不显示的,而是规定了输入时必须输入的字符,例如:

scanf(“i=%d”,&i);

执行该语句时,输入应按下列格式:

i=30

运行语句:

scanf(“%d,%f”,&a,&x);

输入格式应为:

10,0.3

“%d,%f”说明输入一个整型数和一个浮点数之间要输入一个逗号。

6.地址列表

地址是由若干个地址组成的列表,可以是变量的地址、字符串的首地址、指针变量等,各地址间以逗号间隔。

格式输入函数执行结果是将键盘输入的数据流按格式转换成数据,存入与格式相对应的地址指向的存储单元中。

7.三个scanf函数

8.Scanf的注意事项

1)scanf()函数使用的转换说明符跟printf函数几乎相同,唯一区别是前者用%lf来说明double数据类型,而不是跟float型数据一样都用%f。

2)scanf()函数使用“空白符”来决定怎样把输入分成几个字段。它依次把转换说明与字段相匹配,并跳过它们之间的空格(当格式控制符为%c时例外)。

3)当scanf遇到不匹配数据类型的数据时,ANSI C要求函数在第一个出错的地方停止读取输入。

4)如果该函数使用%s转换说明符,那么除”空白符”以外的字符都是可以接受的

5)对unsigned型变量的输入格式,可以用%u、%d、%o或%x格式。

6)在用scanf函数对变量进行赋值时,一般不使用域宽m对格式进行修饰,以免发生错误。对于%d格式,如果指定了域宽,则从键盘上输入数据时,数据之间不加分隔符(如空格等),由系统按给定的域宽自动截取数据。

7)如果在%后面、格式字符前面加上一个“*”附加说明符,表示跳过该输入,输入的数据不放入变量中。

8)使用scanf函数对实型变量赋值时,在格式%f中加入域宽修饰符,其中小数点算一个域宽。

9)使用scanf函数对实型变量进行赋值时,在格式%f中不得控制小数位的精度,但在printf函数中可以使用,并且经常使用。

10)Scanf函数的“格式控制字符串”中一般不使用转义字符,否则要按原样在对应位置从键盘输入,为输入数据带来不必要的麻烦。

三.

 

--结束END--

本文标题: 3.格式IO

本文链接: https://www.lsjlt.com/news/191164.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 3.格式IO
    一.格式化输出:printf()1.不要忘记给格式控制字符串后面的列表中的每个项目都用一个转换说明。Print(“%d%d”,num);//这是错误的2.Printf()函数打印列表中使用的是值,而不管是变量常量还是表达式如果要打印%本身,...
    99+
    2023-01-31
    格式 IO
  • Python3学习3 格式化 % for
    一、%格式化 1.整数输出 %d # 十进制 %o # 八进制 %x # 十六进制 print("%d"%23) # 23 print("%o"%23) # 27 print("%x"%23) # 17 2.浮...
    99+
    2023-01-31
  • Python【3】:格式化 输出 whi
    (占位符) % (求余数) 示例 name = input("请输入你的名字") age =int(input("请输入你的年龄")) ...
    99+
    2023-01-31
    Python whi
  • 收集3:所有文件格式
    A 对象代码库文件 AAM Authorware shocked文件 AAS Authorware shocked包 ABF Adobe二进制屏幕字体 ABK CorelDRAW自动备份文件 ABS 该类文件有时用于指示一个摘要(就像在一篇...
    99+
    2023-01-31
    文件格式
  • Flex Builder 3代码格式化方
    Flex Builder的最新版本已经到了4.5,可是代码格式化工具并没有集成在安装版本中,需要通过其他途径来实现。 下面提供一个安装插件的方法实现Flex代码格式化:      1. 点击菜单中的 Help-> Software ...
    99+
    2023-01-31
    代码 Flex Builder
  • 八、IO优化(3)稀疏列
    一、Nullable  在设计表时,有时会允许某列可以使用Null值(默认)。CREATE TABLE [dbo].[EmpTable2]([EmpID] [varchar](10) NOT NULL,[DepID] [nvarc...
    99+
    2023-01-31
    稀疏 IO
  • python 3 用户输入和格式化输出
    # -*- coding:utf-8 -*- #用户输入 && 格式化输出 #getpass 模块是内置的,可以将输入的内容隐藏 import getpass username = input("username:") pa...
    99+
    2023-01-31
    用户 python
  • Java IO学习笔记+代码(3)
    字符流处理package study.iostudy;import java.io.*;public class ProcesserCharacterStream{    public static void main(String[] a...
    99+
    2023-01-31
    学习笔记 代码 Java
  • 为什么说中国式报表特殊-3、报表格式
    为什么说中国式报表特殊- 3 、报表格式 下面是一个很常见的表-资产负债表。 资产负债表 。 在手工制表的时候,我们都是拿尺子来画表格。(也许中国式报表复杂是因为中国人先发明了尺子?) 现在的报表工具提供两种画表的方式:拖拽式和 Excel...
    99+
    2023-06-03
  • php如何将xml转为json格式?3种方法分享
    当我们处理数据时经常会遇到将XML格式转换为JSON格式的需求。PHP有许多内置函数可以帮助我们执行这个操作。在本文中,我们将讨论将XML格式转换为JSON格式的不同方法。方法一:使用SimpleXML和json_encodeSimpleX...
    99+
    2023-05-14
    php xml json
  • 一文带你你搞懂Java的3种IO模型
    目录Java BIOJava NIOJava AIO小结在Java中,一共有三种IO模型,分别是阻塞IO(BIO)、非阻塞IO(NIO)和异步IO(AIO)。 Java BIO J...
    99+
    2023-05-19
    Java 3种IO模型 Java IO模型 Java IO
  • 3、vagrant的3种网络连接方式
    1. 简介vagrant提供了3种网络连接方式,分别是forwarded ports,host-only networking和bridged networking2. forwarded portsconfig.vm.network "f...
    99+
    2023-01-31
    方式 网络 vagrant
  • 3.spark运行模式
    spark支持的运行模式:本地模式、本地集群模式、standalone模式、yarn模式及mesos模式。 本地模式 local、local[N]或local[N,maxRetries]。主要用于代码调试和跟踪。不具备容错能力,不适用于生...
    99+
    2023-01-31
    模式 spark
  • R语言与格式,日期格式,格式转化的操作
    R语言的基础包中提供了两种类型的时间数据,一类是Date日期数据,它不包括时间和时区信息,另一类是POSIXct/POSIXlt类型数据,其中包括了日期、时间和时区信息。 基本总结如...
    99+
    2022-11-12
  • python中将xml格式转json格式
    一、简介 在用python写脚本时,通常需要处理xml格式的文件或字符串。由于json格式处理的方便性, 我们可将其转为json格式进行处理。 二、步骤 1、安装工具包xmltodict 在命令行输入:pip install xmltod...
    99+
    2023-01-31
    格式 中将 python
  • nef格式如何换成jpg格式
    这篇“nef格式如何换成jpg格式”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“nef格式如何换成jpg格式”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们进入...
    99+
    2023-06-08
  • raw格式转换jpg格式的方法
    这篇文章主要介绍了raw格式转换jpg格式的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。raw格式转换jpg格式的方法:首先打开软件并找到需要转换的图片;然后点击“图片...
    99+
    2023-06-14
  • html格式如何转换为txt格式
    这篇文章将为大家详细讲解有关html格式如何转换为txt格式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。html有什么特点1、简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便,适合初学前端...
    99+
    2023-06-14
  • php转化为xml格式文件格式
    随着互联网的发展,越来越多的应用程序需要在不同系统和平台之间进行数据交换。在这样的场景中,XML格式文件通常被用于数据交换。PHP是一种最流行的Web编程语言之一,常常被用于处理数据和构建Web应用程序。PHP具有方便的数据处理能力,在将P...
    99+
    2023-05-24
  • python format格式化和数字格式化
    目录1.format() 基本用法2.填充与对齐3.数字格式化1.format() 基本用法 python2.6 开始,新增了一种格式化字符串的函数str.format(),它增强了...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作