python输入(input)与输出(print)

一、输入(input)

在python3中,input会将接收到的用户输入自动存储为字符串类型

username = input('输入用户名:') # cuihua
print(username) # cuihua
print(type(username)) # <class 'str'> age = input('输入年龄:') # 18
print(age) # 18
print(type(age)) # <class 'str'>

如果要用接收到的用户输入的数据进行运算时,需要进行类型转化

num1 = input('输入第一个数字:') # 10
num2 = input('输入第二个数字:') # 20 print(type(num1)) # <class 'str'>
print(type(num2)) #<class 'str'> # 此时接收到的用户输入的数据都是字符串类型,但我们想对这两个数据进行相加,怎么做呢?
# 强制类型转化 --- 顾名思义,可以把一个数据类型转化成另一个数据类型
num1 = int(num1)
num2 = int(num2) print(type(num1)) # <class 'int'>
print(type(num2)) #<class 'int'> # 此时,两个字符串类型的数据就被我们转化成了整型数据,就可以相加了
# 验证:
print(num1+num2)

注:将字符串类型转化成整型的时候,只能把由整数组成的字符串转化成整型,其他都会报错

int('111')
# int('11.1') # 会直接报错
# int('11a11') # 会直接报错

二、输出(print)

print('一二三四五')
print('上山打老虎')

print可以向用户打印数据,但是如果要打印一些变量值和字符串的组合该怎么做呢?这就涉及到了字符串的格式化

字符串的格式化输出方法一:%s

name = 'cuihua'
age = 18 print('my name is %s' %name) # 只有一个变量时,可以直接在%后面加变量名
print('my name is %s,my age is %s' %(name,age)) # 当有多个变量时,%后面跟一个元祖,元祖里面写着变量名 # 扩展一:还可以以字典的形式传值(了解即可)
print('my name is %(name)s,my age is %(age)s' %{'name':'xiongda','age':18}) # 扩展二:%s可以接收任意类型的参数
print('%s' %1)
print('%s' %1.1)
print('%s' %'aaa')
print('%s' %[1,2,3])
print('%s' %{'name':'xiongda'}) # 注意:当接收元祖类型的参数时,元祖长度为几,前面的%s占位符就得为几个

字符串的格式化输出方法二:str.format()

该方法兼容性更好

# format后面跟着一个元祖,可以不指定下标,则按照默认顺序传值,也可以通过指定下标的方式传值
# 不指定下标进行传值
print('my name is {},my age is {}'.format('cuihua',18)) # 指定下标进行传值
print('my name is {1},my age is {0}'.format(18,'cuihua')) # 也可以按照key=value的方式进行传值
print('my name is {name},my age is {age}'.format(age=18,name='cuihua'))

字符串的格式化输出方法三:f格式化

该方法python3.5之后才推出

name = 'cuihua'
age = 18
print(f'my name is {name},my age is {age}') # 注意,需要在字符串前面加f才能使用

三、f格式化字符填充

什么是填充?

当我们指定了字符串最终的长度时,如果现有的字符串没那么长,则使用我们指定的字符串去填满这个长度,这就是填充

name = 'cuihua'
age = 18 # 填充格式{变量名:t填充字符 对齐方式 指定长度}
# 对齐方式:左对齐(<),右对齐(>),居中对齐(^)
# 记忆方法:尖端向哪边,就朝哪边对齐 # 不指定填充字符就默认使用空格填充
print(f'my name is {name:>10},my age is {age:<10}')
# my name is cuihua,my age is 18 # 指定字符就用指定的字符取填充
print(f'my name is {name:*>10},my age is {age:*<10}')
# my name is ****cuihua,my age is 18******** # 指定精度
salary = 123123.123456
print(f'{salary:.2f}') # 指定精度为2位,输出结果为123123.12

05-python的输入与输出的更多相关文章

  1. python 3 输入和输出

    一.普遍的输入和输出 1.输入 在python3中,函数的输入格式为:input(),能够接受一个标准输入数据,返回string类型. input() 函数是从键盘作为字符串读取数据,不论是否使用引号 ...

  2. python文件输入和输出

    1.1文件对象 文件只是连续的字节序列.数据的传输经常会用到字节流,无论字节流是由单个字节还是大块数据组成.1.2文件内建函数open()和file() 内建函数open()的基本语法是: file_ ...

  3. Python(输入、输出;简单运算符;流程控制;转译)

    一 输入输出 python3中统一都是input,python2中有raw_input等同于python3的input,另外python2中也有input 1.res=input("pyth ...

  4. Python的输入和输出问题详解

    输出用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print('hello, world') pr ...

  5. Python学习——输入和输出

    (转自:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014316434841 ...

  6. Python中输入和输出(打印)数据

    一个程序要进行交互,就需要进行输入,进行输入→处理→输出的过程.所以就需要用到输入和输出功能.同样的,在Python中,怎么实现输入和输出? Python3中的输入方式: Python提供了 inpu ...

  7. python(1) - 输入和输出

    前面已经说过了,print()函数括号里加上字符串,就可以实现输出 >>> print('This is Python!') This is Python! print()函数也可以 ...

  8. 简谈-Python的输入、输出、运算符、数据类型转换

    输出: 格式化输出: 看到了 % 这样的操作符,这就是Python中格式化输出. 换行输出: 在输出的时候,如果有 \n 那么,此时 \n 后的内容会在另外一行显示 输入: 在python2.7当中, ...

  9. Python学习 - 输入和输出

    #输出 print('hello, python') print('The quick brown fox', 'jumps over', 'the lazy dog') #多个字符串,用逗号隔开,就 ...

  10. python的输入和输出

    基本输出 python中的输出使用关键字--print,与python2不同的是,python3的输出后面必须要加括号,示例如下: python3.0以上输出: python2.0以上的输出: 格式化 ...

随机推荐

  1. 2、Java封装、继承与多态

    /** * 类.对象.面向过程.面向对象的理解: * 1.类:类是封装对象的属性和方法的载体 * * 2.对象:对象是类抽象出来的一个实例 * * 3.面向过程:面向过程注重的是具体的实现过程,因果关 ...

  2. prometheus-添加监控linux服务器

    1. prometheus-添加监控linux服务器 prometheus添加监控linux服务器 node_exporter:用于监控Linux系统的指标采集器. 常用指标: CPU 内存 硬盘 网 ...

  3. 记一次在CentOS上安装GitLab的流程

    1.本次环境说明 系统:Centos7.6 IP地址:http://192.168.3.213: 最低配置要求:2核心CPU和4G内存,这是因为[GitLab]的整体运行包含了多个进程  2.自行安装 ...

  4. [python]《Python编程快速上手:让繁琐工作自动化》学习笔记1

    1. 模式匹配与正则表达式笔记(第7章)(代码下载) 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念. ...

  5. printf()和scanf()的*修飾符

    如果你不想預先設置字段的寬度,想通過程序來進行設定,則可以可以使用"*"來進行修飾字段的寬度,前提是在程序中要包含"*"和參數對應的值(比如%*d,那麽參數應該 ...

  6. C++Vector源码解析(侯捷STL)

    vector是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新的元素.vector的实现技术,关键在于对大小的控制以及重新配置时的数据移动效率. 一.vector的数据结构 vector采 ...

  7. Go语言的template

    html/template包实现了数据驱动的模板,用于生成可防止代码注入的安全的HTML内容.它提供了和 text/template包相同的接口,Go语言中输出HTML的场景都应使用html/temp ...

  8. MySQL 合并查询union 查询出的行合并到一个表中

    在合并查询中,尤其是二分类的情况,在查询结果是相同列名的时候可以考虑合并查询.先查询出行的结果,再使用union或者union all合并查询结果. 另外如果 union 和 order by 一起使 ...

  9. Unity_UIWidgets - 文字图标Icon

    Unity_UIWidgets - 文字图标Icon 文字图标Icon 开篇 不吐不快的废话 正题 主题Icon 获取Icon 第一步 第二步 第三步 使用Icon 1.导入至Resources文件夹 ...

  10. 读Java8函数式编程笔记02_流

    1. 外部迭代 1.1. for循环是一个封装了迭代的语法糖 1.1.1. 本质上来讲是一种串行化操作 1.2. 很难抽象出不同操作 2. 内部迭代 2.1. 内部迭代中的相应接口:Stream 2. ...