1、输入:程序里写好的、文件读取的、网络服务器获取的、接收用户输入的
(1)python2两个函数raw_input()、input():input()=raw_input()+eval()
(2)python3一个函数input()与python2中raw_input()功能相同,接收为str
2、输出:输出到控制台、写回文件中、返回给服务器
(1)python2中为print语句,eg:print xxx
(2)python3为print函数,print(values,sep,end,file,flush)
a、sep分隔符
b、file输出位置,默认为控制台
c、flush输出数据会先在缓冲区再到输出区,若flush为True会立即将其立即输出,反之会在缓冲区呆够它应该在的时间
(3)导入import sys,file参数默认为file = sys.stdout标准输出,即输出到控制台
3、输出不自动换行。
(1)python2使用逗号,eg:print xxx,xxx,xxx
(2)python3使用sep = ''控制,eg:print("values",sep = '')
4、字符串对象的格式化输出
(1)占位格式符:"my name is %s,and my age is %d"%(name,age)
a、完整格式:%[(name)][flags][width][.precision]typecode
b、name作用:根据(name)名称查找对应的值格式到字符串中
eg:"my name is %(na)s,and my age is %(ag)d"%({"na":name,"ag":age}),用字典的键值对进行对应。
c、flags:-左对齐,' '整数的左侧补上空格为了与负数对齐,0在width前面补的是零,空即默认右对齐
d、width:与c相同,eg:%3d
e、.precision:与c相同,eg:%3.2f
f、typecode:写一些我不熟悉的。eg:%i十进制同%d,%e(E)科学计数法,%g(G)自动切换格式(好灵活厉害啊),%r不知老师说后面碰到了讲,%c转化为Unicode字符,%%转义输出%。
g、没有%b!!
(2).format方法:"my name is {0},and my age is {1}".format(name,age)
(3)f字符串方法:f'my name is{name},and my age is{age}'
5、文件输出。f=open("test.txt","w")
(1)python2:print >> f , "values"
(2)python3:print("values", file=f)
6、flush。python的运行机制中,若输出语句有换行则会立即输出,若没有会放到缓冲区里等待再输出。flush=True会立即清空缓冲区中数据将其立即输出。(但是不知道是因为我的解释器版本3.9还是像弹幕里说的每个人的机器缓冲机制不同,sleep函数没有像老师那样起相同作用,课程地址12-Python的输出-3.x版本_哔哩哔哩_bilibili)
7、分隔符进行输出。eg:"-".join(["a","b","c"])