02Python输入输出
输入输出
print()函数
- sep=' ' 数据之间一空格分割,默认是空格
- end='\n' 在打印后会额外的加一个数据,默认是换行符
print("hello", "world")
print("hello", "world", sep='------')
"""
上面两行代码输出语句分别为:
hello world
hello------world
"""
# 1
print("hello", "world")
print("你好,世界!")
# 2
print("hello", "world", end='+++')
print("你好,世界!")
"""
代码块1的输出结果:
hello world
你好,世界!
代码块2输出结果:
hello world+++你好,世界!
"""
字符串转义符
转义字符:在字符串里带有 \
的字符,具有特殊的含义
转义字符 | 描述 |
---|---|
\(在行尾时) | 续行符,使用在字符串或者代码的外(后)面,作用是将一行数据变成多行显示,方便查看代码和数据,不会执行操作 |
\\ | 反斜杠符,取消\的转义作用 |
\' | 单引号,取消单引号作用 |
\" | 双引号,取消双引号作用 |
\n | 回车符,将光标移到下一行开头 |
\r | 回车符,将本行数据清除,将光标移到本行开头 |
\t | 水平制表符,即Tab键,一般相当于四个空格 |
\b | 退格(Backspa),将光标位置移到前一列 |
字符串输出格式化
format格式化
数字 | 格式 | 输出 | 描述 |
---|---|---|---|
3.1415926 | 3.14 | 保留小数点后两位 | |
3.1415926 | +3.14 | 带符号保留小数点后两位 | |
-1 | -1.00 | 带符号保留小数点后两位 | |
2.71828 | 3 | 不带小数 | |
5 | 05 | 数字补零 (填充左边, 宽度为2) | |
5 | 5xxx | 数字补x (填充右边, 宽度为4) | |
10 | 10xx | 数字补x (填充右边, 宽度为4) | |
1000000 | 1,000,000 | 以逗号分隔的数字格式 | |
0.25 | 25.00% | 百分比格式 | |
1000000000 | 1.00e+09 | 指数记法 | |
13 | 13 | 右对齐 (默认, 宽度为10) | |
13 | 13 | 左对齐 (宽度为10) | |
13 | 13 | 中间对齐 (宽度为10) | |
11 | '{:b}'.format(11) '{:d}'.format(11) '{}'.format(11) '{:x}'.format(11) '{:#x}'.format(11) '{:#X}'.format(11) |
1011 11 13 b 0xb 0XB |
进制转换 |
# 格式化1 format格式化
name = "小明"
age = 18
hobby = "打游戏"
# 1) 不带数字编号
print("大家好,我是{},今年{}岁,喜欢{}".format(name, age, hobby)) # 大家好,我是小明,今年18岁,喜欢打游戏
# 2) 带数字编号
# 不考虑数据类型
print("大家好,我是{0},今年{2}岁,喜欢{1}".format(name, age, hobby)) # 大家好,我是小明,今年打游戏岁,喜欢18
print("大家好,我是{0},今年{0}岁,喜欢{0}".format(name, age, hobby)) # 大家好,我是小明,今年小明岁,喜欢小明
# 3) 附带关键字
print("大家好,我是{name},今年{age}岁,喜欢{hobby}".format(name=name, age=age, hobby=hobby)) # 大家好,我是小明,今年18岁,喜欢打游戏
%格式化
符号 | 描述 |
---|---|
%s | 格式化字符串 |
%f | 格式化浮点数字,可指定小数点后的精度 |
%d | 格式化整数 |
%c | 格式化字符及其ASCLL码 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %F和%E的简写 |
%p | 用十六进制数格式化变量的地址 |
# 格式化2 %格式化
money = 1.86544444444
print("我有%f钱" % money) # 我有1.865444钱
print("我有%.2f钱" % money) # 我有1.87钱
f格式化(format精简版)
money = 1.8654
print(f"我有{money}钱") # 我有1.8654钱
print(f"我有{money:.2f}钱") # 我有1.87钱
ps:{}中格式同format一样
字符操作符
操作符 | 描述 |
---|---|
+ | 字符串连接 |
* | 重复输出字符串 |
[] | 通过索引获取字符串中字符 |
[:] | 截取字符串中的一部分 |
in | 成员运算符-如果字符串中包含给定的字符返回True |
not in | 成员运算符-如果字符串中不包含给定的字符返回True |
r/R | 原始字符串-所有字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符 |
input()函数
- 语法:input("提示输入数据")函数
- 作用:1)获取用户输入,返回值为字符串(str)类型
name = input("请输入一个你想输入的人名:") # 输入:Tom
print(name) # Tom
print(type(name)) # <class 'str'>
# 注意:即使输入数字,返回的也是字符串类型,而不是int类型
num = input("请输入一个数字:") # 输入:5
print(num) # 5
print(type(num)) # <class 'str'>
- 作用:2)阻塞或暂停程序
print("程序前面部分执行完毕......")
input("请按回车继续......") # 在这里程序会暂停,等待你的回车动作
print("继续执行程序的后面部分......")
此时的input函数不会将输入的值保存下来,只是用作暂停程序动作
数据类型的转换
函数 | 说明 |
---|---|
int(x) | 将x转化为整数 |
float(x) | 将x转化为浮点数 |
str(x) | 将x转化为字符串 |
eval(str) | 将字符串中的数据转换成Python表达式原本类型 |
tuple(s ) | 将序列 s 转换为⼀个元组 |
list(s ) | 将序列 s 转换为⼀个列表 |
chr(x ) | 将⼀个整数转换为⼀个Unicode字符 |
ord(x ) | 将⼀个字符转换为它的ASCII整数值 |
hex(x ) | 将⼀个整数转换为⼀个⼗六进制字符串 |
oct(x ) | 将⼀个整数转换为⼀个⼋进制字符串 |
bin(x ) | 将⼀个整数转换为⼀个⼆进制字符串 |
# 输入一个小数,请尝试转换成整数、字符串及浮点数
num = input("请输入一个小数:") # 3.55
print(num, type(num)) # num本身是字符串格式 结果:3.55 <class 'str'>
num_float = float(num)
print(num_float, type(num_float)) # 3.55 <class 'float'>
# 字符串的小数不能直接转为int类型,会报错,可以转换为浮点型,在转换为int型
# num_int = int(num) # 报错
num_int = int(num_float)
print(num_int, type(num_int)) # float转为int型会向下取整,不是四舍五入 结果:3 <class 'int'>
num_str = str(num_int)
print(num_str, type(num_str)) # 3 <class 'str'>
02Python输入输出的更多相关文章
- [译]DbContext API中使用SqlQuery和ExecuteSqlCommand获取存储过程的输入输出参数
水平有限,欢迎指正.原文:http://blogs.msdn.com/b/diego/archive/2012/01/10/how-to-execute-stored-procedures-sqlqu ...
- ECS Linux 服务器解除ssh登陆后被锁定或暂停输入输出的终端
在使用SSH终端(如Xshell)登陆时,若不慎点击 Ctrl + S 按键,会导致终端很像被锁定,输入和输出都无响应. 这是由于操作系统的终端收到指令 Ctrl + S 后,会暂停终端输入输出的刷 ...
- linux中输入输出和重定向问题
输入输出解释 当我们执行shell的时候,每个进程都和三个打开的文件有关系,并使用文件描述符来引用这些文件.但这些文件不容易记忆,所以shell给了相应的文件名: 0:输入文件-标准输入(它的命令是输 ...
- C/C++ 标准输入输出重定向
转载自:http://www.cnblogs.com/hjslovewcl/archive/2011/01/10/2314356.html 这个对经常在OJ上做题的童鞋们很有用.OJ基本都是用标准输入 ...
- Lattice FIFO 使用之FIFO_DC输入输出宽度不同时 的一个注意事项
在使用FIFO_DC的时候,我们知道这个FIFO的一个功能是可以输入输出的数据宽度不一样,比如: 输入数据为128bit,输出数据为16bit,FIFO内部可以实现这样的转换,但是输出的时候是先送出一 ...
- [ACM训练] ACM中巧用文件的输入输出来改写acm程序的输入输出 + ACM中八大输入输出格式
ACM中巧用文件的输入输出来改写acm程序的输入输出 经常有见大神们使用文件来代替ACM程序中的IO,尤其是当程序IO比较复杂时,可以使自己能够更专注于代码的测试,而不是怎样敲输入. C/C++代码中 ...
- C语言的标准输入输出
1. 标准输入输出 标准输入.输出主要由缓冲区和操作方法两部分组.缓冲区实际上可以看做内存中的字符串数组,而操作方法主要是指printf.scanf.puts.gets,getcha.putcahr等 ...
- Linux标准输入输出
linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出standard output 1,错误输出:error output 2 以后打开文件后.新增文 ...
- [JAVA]HTTP请求应答作输入输出
请求(需要发送数据给别人): URL url = new URL("需要请求的URL连接"); HttpURLConnection httpConnection = (HttpUR ...
- Java—输入输出技术
在Java中,通过java.io包提供的类来表示流,基本的输入输出流为InputStream和OutputStream.从这两个基本的输入输出流派生出面向特定处理的流,如缓冲区读写流.文件读写流等. ...
随机推荐
- php7怎么安装memcache扩展
php7安装memcache扩展 1.下载文件,解压缩 memcache windows php7下载地址: https://github.com/nono303/PHP7-memcache-dll ...
- day25-Listener监听器
Listener监听器 1.Listener监听器介绍 Listener监听器是JavaWeb三大组件之一.JavaWeb三大组件分别是:Servlet程序,Listener监听器,Filter过滤器 ...
- 同一服务器部署多tomcat以及MyEclipse添加多tomcat
tomcat有很多版本但他们的部署方式并不因为版本的不同而改变其的部署方式,操作者不必考虑此等原因.本人办公电脑使用的是tomcat7,家里自用的是6版本,这里就以6版本为例实现同一台机器上部署多to ...
- day34 JSTL标签
JSTL标签 <!-- 写在jsp文件的最前 --> <!-- JSTL标签库是一个JSP标签的集合,封装了许多jsp应用程序通用的核心功能 prefix="c" ...
- Type Script 在流程设计器的落地实践
流程设计器项目介绍 从事过BPM行业的大佬必然对流程建模工具非常熟悉,做为WFMC三大体系结构模型中的核心模块,它是工作流的能力模型,其他模块都围绕工作流定义来构建. 成熟的建模工具通过可视化的操作界 ...
- MassTransit 知多少 | 基于MassTransit Courier实现Saga 编排式分布式事务
Saga 模式 Saga 最初出现在1987年Hector Garcaa-Molrna & Kenneth Salem发表的一篇名为<Sagas>的论文里.其核心思想是将长事务拆分 ...
- LeetCode HOT 100:在排序数组中查找元素的第一个和最后一个位置
题目:34. 在排序数组中查找元素的第一个和最后一个位置 题目描述: 给你一个递增数组,和一个目标值target,最终返回数组中第一次出现target和最后一次出现target的下标.如果该数组中没有 ...
- 基本能看懂的C编译器,只有365行!
Fabrice Bellard is a French computer programmer known for writing FFmpeg, QEMU, and the Tiny C Compi ...
- python网络爬虫数据解析之正则
本节内容,讲解爬取网络图片,利用正则匹配图片地址 请求网页之后,响应部分内容如下图: 1 时间:2023/1/7 10:42 2 功能描述 3 1.进行指定标签的定位 4 2.标签或者标签对应的属性中 ...
- 高并发解决方案orleans实践
开具一张图,展开来聊天.有从单个服务.consul集群和orleans来展开高并发测试一个小小数据库并发实例. 首先介绍下场景,创建一个order,同时去product表里面减掉一个库存.很简单的业务 ...