format格式化方式
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序字符串的格式化输出
方式 :1、使用占位符[]、{}、() 2、format
例如:format是一个 字符串中的函数 ‘’.format()" 此处的‘.’调用 []、{}、()
数字格式化
下表展示了 str.format() 格式化数字的多种方法:
^, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
+表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格
b、d、o、x 分别是二进制、十进制、八进制、十六进制。
此外我们可以使用大括号 {} 来转义大括号,
如下实例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
print ("{} 对应的位置是 {{0}}".format("runoob"))
运行:
runoob 对应的位置是 {0}
例1:
#format是一个 字符串中的函数 ''.format() 此处的‘.’调用 []、{}、()
age=2
s='已经上幼儿园'
message='乔治说:我呀今年{}岁了,已经上幼儿园{}'.format(age,s) #其中“{}”是占位符
print(message)
name='乔治'
age=3
hobby='玩恐龙!'
money=59.3
message='{}今年{}岁,最喜欢{},有零花钱{}'.format(name,age,hobby,money)
print(message)
运行:
乔治说:我呀今年2岁了,已经上幼儿园已经上幼儿园
乔治今年3岁,最喜欢玩恐龙!,有零花钱59.3
例2:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
print("网站名:{name}, 地址 {url}".format(name="菜鸟教程", url="www.runoob.com"))
# 通过字典设置参数
site = {"name": "菜鸟教程", "url": "www.runoob.com"}
print("网站名:{name}, 地址 {url}".format(**site))
# 通过列表索引设置参数
my_list = ['菜鸟教程', 'www.runoob.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list)) # "0" 是必须的
input的用法
注意:从input键盘输入的都是字符串类型。
Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
Python2.x 中 input() 相等于 eval(raw_input(prompt)) ,用来获取控制台的输入。
raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。
注意:input() 和 raw_input() 这两个函数均能接收 字符串 ,但 raw_input() 直接读取控制台的输入(任何类型的输入它都可以接收)。而对于 input() ,它希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError 。
除非对 input() 有特别需要,否则一般情况下我们都是推荐使用 raw_input() 来与用户交互。注意:python3 里 input() 默认接收到的是 str 类型。