输入输出
一、输入输出:
1. 输出:
在 print(),的括号中,输入想要打印的内容,也可以打印输出想要的字符串,但需要用双引号和单引号来括起来。
如果想输出多个字符串内容,就在每个内容的引号后面加个逗号,在翻译时,这些逗号就会被翻译成一个空格。
也可以直接把结果打印,例如:
print(300);
print() 也可以支持多行打印,但需要在 print() 函数中将需要多行打印的字符串加个 ‘’‘ ’‘’ 即可,print() 函数会原封不懂得输出三引号里面的内容(包括格式),例如:
print('''line1 line2 line3''') # 输出结果: line1s line2 line3
python 中,有时会需要转义,例如需要输出 \n
等,我们就在 \n
前面加一个 \
如果字符串里面有很多字符都需要转义 ,为了简化,Python还允许用 r''
表示 ''
内部的字符串默认不转义,并且有时候 ''' '''
还可以和 r
一起用。
print('\\\t\\') # 输出结果: \ \ print(r'\\\t\\') # 输出结果: \\\t\\ print(r'''hello,\n world''') # 输出结果: hello,\n world
既然知道了python中,输出使用的print函数,那我们有时候需要规范化输出,在之前接触过别的语言的同学一定知道 % 这个旧式格式化输出字符串数字,python中同样可以使用,但是随着时代的更新,这种格式化输出逐渐被一种输出形式更加多样化的函数取代,即:str.format() 函数。
1. 首先给出 str.format() 的使用模板
print('{}{}'. format('', '')) 例如:print('{}{}'. format('python', '真有趣')) # 输出如下: python真有趣 从该例子可以看出,前面两个大括号里面的值(这两个值被称作格式化字段)被format中的参数替换了。
2. 对于 format 的用法不止于此,在大括号(格式化字段)中填入数字,可以用于指定该位置(这个大括号)用于传入 format 的中的那个位置的引号中的值,例如:
print('{0}{1}'. format('python', '真有趣')) # 输出如下: python真有趣 print('{1}{0}'. format('python', '真有趣')) # 输出如下: 真有趣python
3. 还可以子啊 format 中用关键字参数,他们的值会指向前面括号中改名字的参数,例如:
print('{language}{ganjue}'. format(language="python", ganjue='真有趣')) # 输出如下: python真有趣
4. format 中位置和关键字参数可以任意组合,但应该注意,format 位置实参应该在关键字实参之前,例如:
print('{0},{1}{ganjue}'. format('java', 'python', ganjue="真有趣")) # 输出如下: java,python真有趣 print('{0},{ganjue}{1}'. format('java', 'python', ganjue="真有趣")) # 输出如下: java,真有趣python print('{0},{1}{ganjue}'. format('java', ganjue="真有趣", 'python')) # 输出如下: SyntaxError: positional argument follows keyword argument
以上四点是对 format 的使用介绍,在介绍一些别的可能会用到的输出函数:
1. str() :函数返回一个字符串,针对与用户而言,方便用户读取,理解
s = '憨憨' print(str(s)) # 输出如下: 憨憨
2. repr():产生一个解释器易读的字符串,针对解释器而言,方便解释,译码。repr 的输出的内容跟 str 的输出的内容类似,但是 repr 函数可以转义字符串中的特殊字符,并且 repr 的参数可以是 python 的任意对象,但是需要在外层多加一对括号,表示元组。例如:
s = '憨憨' print(repr(s)) # 输出如下: ‘憨憨’ s = 'python\n' print(repr(s)) # 输出如下: 'python\n' a = 1 print(repr((a, ('憨憨', '妹妹')))) # 输出如下: (1, ('憨憨', '妹妹'))
其他在 format 上的注意问题:
1. 在 format 中可以在大括号中用!a (使用 ascii()), !s (使用 str()) 和 !r (使用 repr()) 可以用于在格式化某个值之前对其进行转化:
import math print('常量 PI 的值近似为: {}。'.format(math.pi)) # 输出如下: 常量 PI 的值近似为: 3.141592653589793。 print('常量 PI 的值近似为: {!r}。'.format(math.pi)) # 输出如下: 常量 PI 的值近似为: 3.141592653589793。
2. 我们在对数值进行格式化输出时,特别是小数,总会有精确到几位,在 C 语言中,精确小数点我们用的是 0.xf,在 python 中我们在 format 格式化输出时,精确小数点,我们一定要用 : 加在 0 与 . 之间,即:0:.xf ,例如:
import math print('常量 PI 的值近似为 {0:.3f}。'.format(math.pi)) # 输出如下: 常量 PI 的值近似为 3.142。
3. format 中的 : 还可以控制该数域的宽度,比如美化表格,例如:
table = {'小明': 1, '小红': 2, '小李': 3} for name, number in table.items(): print('{0:10} ==> {1:10d}'.format(name, number)) # 输出结果: 小明 ==> 1 小红 ==> 2 小李 ==> 3
2. 输入
Python提供 input() 内置函数,专门用于从键盘输入数据,但需要用一个变量来存储该数据,一般存储该数据的变量类型是字符串类型,例如:
a = input() print(type(a)) # 输入为: 1 # 输出结果为: <class 'str'>
input() 还可以提示用户需要输入那些信息,例如:
a = input('请输入一个整数:') print(type(a)) # 系统会自动输出: 请输入一个整数: # 我们在键盘输入内容: 1 # 输出结果为: <class 'str'>
既然 input() 输入的存储变量为字符串类型,那我们后续需要用数据进行操作时,就要用类型转化进行数据类型转化,就上面例子而言,我们对整数进行强制类型转化:
a = input('请输入一个整数:') b = int(a) print(type(a), type(b)) # 系统会自动输出: 请输入一个整数 # 我们在键盘输入内容: 1 # 输出结果为: <class 'str'> <class 'int'>