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.从这两个基本的输入输出流派生出面向特定处理的流,如缓冲区读写流.文件读写流等. ...
随机推荐
- [论文阅读] 颜色迁移-N维pdf迁移
[论文阅读] 颜色迁移-N维pdf迁移 文章: N-Dimensional Probability Density Function Transfer and its Application to C ...
- nc传输文件结束后不退出
原因 版本不同 udp传输不会自动关闭 解决方案 nc -l 1234 > file.img nc ip 1234 -q 0 < file.img 采用tcp传输文件 -q 文件传输结束后 ...
- js 金钱3位格式化
function formatCash(str) { return str.split('').reverse().reduce((prev, next, index) => { return ...
- 【接口测试】Postman(一)--接口测试知识准备
1.0 前言 应用程序编程接口(Application Programming Interface, API)是这些年来最流行的技术之一,强大的Web应用程序和领先的移动应用程序都离不开后端强大的 ...
- 如何使用 LinkedHashMap 实现 LRU 缓存?
本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 大家好,我是小彭. 在上一篇文章里,我们聊到了 HashMap 的实现原理和源码分析,在源码分析的过程中,我 ...
- java面试题-线程
简述线程.程序.进程的基本概念.以及他们之间关系是什么? 系统运行程序到停止就是一个进程创建到消亡的过程,而线程则是进程的更小单位 线程有哪些基本状态? 初始,运行中,等待,阻塞,超时,终止1 关注公 ...
- 【SQL进阶】【CASE/IF、COUNT/SUM、多条记录拼接为一个内容】Day03:聚合分组查询
〇.今日内容概述 一.聚合函数 1.SQL类别高难度试卷得分的截断平均值[去最高最低分求平均] 自己的想法 SELECT tag, difficulty, ROUND((SUM(score)-MIN( ...
- 单一接口优化过程全记录(主要涉及Redis)
接口优化过程记录 问题背景 某个接口耗时长(247ms),但里面逻辑不算复杂,只进行了简单的对象引用以及操作了多次Redis 步骤1:链路追踪,确定业务耗时点 接口里通过链路追踪以及日志查询发现主要是 ...
- express 为所有路由添加 405 method not allowd 响应
背景知识 HTTP Status Code 405 405 Method not allowed The resource was requested using a method that is n ...
- Qt的三套无边框窗体的方案:可按比例拖拽窗体大小的无边框窗口和几个常见的无边框实例
一.可按比例拖拽窗体大小的无边框窗口 前几天接到一个需求,就是视频广播的窗体画面要可以拖拽,修改成了可以拖拽全屏的窗口之后,又有一个问题:视频画面也被拉伸了. 由于视频画面是有比例的,所以我们最好也能 ...