输出
1. 普通的输出
# 打印提示
print('hello world')
print('给我的卡---印度语,你好的意思')
2. 格式化输出
2.1 格式化操作的目的
比如有以下代码:
pirnt("我今年10岁")
pirnt("我今年11岁")
pirnt("我今年12岁")
...
2.2 什么是格式化
看如下代码:
age = 10
print("我今年%d岁"%age)
age += 1
print("我今年%d岁"%age)
age += 1
print("我今年%d岁"%age)
...
在程序中,看到了%
这样的操作符,这就是Python中格式化输出。
age = 18
name = "xiaohua"
print("我的姓名是%s,年龄是%d"%(name,age))
2.3 常用的格式符号
下面是完整的,它可以与%符号使用列表:
格式符号 | 转换 |
---|---|
%c | 字符 |
%s | 通过str() 字符串转换来格式化 |
%i | 有符号十进制整数 |
%d | 有符号十进制整数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写字母) |
%X | 十六进制整数(大写字母) |
%e | 索引符号(小写'e') |
%E | 索引符号(大写“E”) |
%f | 浮点实数 |
%g | %f和%e 的简写 |
%G | %f和%E的简写 |
2.4 使用str.format()方法。
用法:它通过{}和:来代替传统%方式
- 使用位置参数
要点:从以下例子可以看出位置参数不受顺序约束,且可以为{},只要format里有相对应的参数值即可,参数索引从0开,传入位置参数列表可用*列表的形式。
>>> li = ['hoho',18]
>>> 'my name is {} ,age {}'.format('hoho',18)
'my name is hoho ,age 18'
>>> 'my name is {1} ,age {0}'.format(10,'hoho')
'my name is hoho ,age 10'
>>> 'my name is {1} ,age {0} {1}'.format(10,'hoho')
'my name is hoho ,age 10 hoho'
>>> 'my name is {} ,age {}'.format(*li)
'my name is hoho ,age 18'
- 使用关键字参数
要点:关键字参数值要对得上,可用字典当关键字参数传入值,字典前加**即可
>>> hash = {'name':'hoho','age':18}
>>> 'my name is {name},age is {age}'.format(name='hoho',age=19)
'my name is hoho,age is 19'
>>> 'my name is {name},age is {age}'.format(**hash)
'my name is hoho,age is 18'
- 填充与格式化
格式:{0:[填充字符][对齐方式 <^>][宽度]}.format()
>>> '{0:*>10}'.format(20) ##右对齐
'********20'
>>> '{0:*<10}'.format(20) ##左对齐
'20********'
>>> '{0:*^10}'.format(20) ##居中对齐
'****20****'
- 精度与进制
>>> '{0:.2f}'.format(1/3)
'0.33'
>>> '{0:b}'.format(10) #二进制
'1010'
>>> '{0:o}'.format(10) #八进制
'12'
>>> '{0:x}'.format(10) #16进制
'a'
>>> '{:,}'.format(12369132698) #千分位格式化
'12,369,132,698'
- 使用索引
>>> li
['hoho', 18]
>>> 'name is {0[0]} age is {0[1]}'.format(li)
'name is hoho age is 18
3. 换行输出
在输出的时候,如果有\n
那么,此时\n
后的内容会在另外一行显示
print("1234567890-------") # 会在一行显示
print("1234567890\n-------") # 一行显示1234567890,另外一行显示-------
输入
1. python2版本中
1.1 raw_input()
在Python中,获取键盘输入的数据的方法是采用 raw_input 函数(至于什么是函数,咱们以后的章节中讲解),那么这个 raw_input 怎么用呢?
看如下示例:
password = raw_input("请输入密码:")
print '您刚刚输入的密码是:', password
运行结果:
注意:
- raw_input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示
- raw_input()在从键盘获取了数据以后,会存放到等号右边的变量中
- raw_input()会把用户输入的任何值都作为字符串来对待
1.2 input()
input()函数与raw_input()类似,但其接受的输入必须是表达式。
>>> a = input()
123
>>> a
123
>>> type(a)
<type 'int'>
>>> a = input()
abc
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1, in <module>
NameError: name 'abc' is not defined
>>> a = input()
"abc"
>>> a
'abc'
>>> type(a)
<type 'str'>
>>> a = input()
1+3
>>> a
4
>>> a = input()
"abc"+"def"
>>> a
'abcdef'
>>> value = 100
>>> a = input()
value
>>> a
100
input()接受表达式输入,并把表达式的结果赋值给等号左边的变量
2. python3版本中
没有raw_input()函数,只有input()
并且 python3中的input与python2中的raw_input()功能一样
3.一行输入多个数据,空格间隔
输入数据较少时
a,b = input().split()
输入数据较多时,用列表存取
list = [int(index) for index in input().split()]
参考:https://blog.csdn.net/xiaokang123456kao/article/details/73009480