浩同学有些话:
…本章会介绍一些Python中的基本操作方式,让我们能看懂一些简单的Python程序,后续难度会递加,但小编会用更精辟的语言让读者弄明白。
6.phthon输入与输出
数据获取:
- 程序内部写死
val=100 - 文件里面读取
将文件读入程序中 .txt - 网络服务器进行获取
通过网络服务器获取对方电脑文件 - 接收用户的输入
通过键盘输入信息
数据输出:
- 写回到文件里面保存
- 发送回服务器
- 通过界面展示给用户看
知识点一、输入的定义
python2版本 :
- result=raw_input(“提示信息”) 输入的如何东西都会当做字符串来处理,并将输入结果赋值给result变量。
- result=input(“提示信息”) ------ 输入的内容会当成代码块处理,同样将输入结果赋值给result变量。
补充:
1.input相当于调用了raw_input ()+ eval()两种函数 。
2.eval()表示将字符串转化为代码块
3.代码块就好比一个具体的实例 例:a+b
python3版本:
- result=input(“提示信息”) 输入的如何东西都会当做字符串来处理,并将输入结果赋值给result变量。
- 手动调用eval()函数,将字符串转化为代码块。
- 手动强制转化,将字符串转化为代码块
c=input("请输入一个数") "输入 3"
print(type(c)) "输出结果 <class 'str'>"
print(c) "输出结果 3"
c=input("请输入一个数") "输入 2"
result=eval(c)
print(type(result)) "输出结果 <class 'int'>"
print(result) "输出结果 2"
c=input("请输入一个计算式子") "输入 2+3"
result=eval(c)
print(type(result)) "输出结果 <class 'int'>"
print(result) "输出结果 5"
c=input("请输入一个数") "输入 3"
c=int(c)
print(type(c)) "输出结果 <class 'int'>"
print(c) "输出结果 3"
补充:
1.python3版本中input 的功能相当于python2版本中的raw_input。
2.Python3版本与Python2版本中的输入方法不能共用。
知识点二、输出的定义:
python2版本 :
一,输出一个值/输出一个变量
print 33 "输出结果 33"
二,输出多个变量
num1=34 num2=55
print num1,num2 "输出结果 34 55"
三,格式化输出 (调用模板)
三种方法,自行选择掌握一种即可。
name='浩叁佰' age=19
print "我的名字是",name,",年龄是",age "输出结果 我的名字是 浩叁佰 , 年龄 19"
print "我的名字是%s,年龄是%d"%(name,age) "输出结果 我的名字是浩叁佰,年龄19"
print "我的名字是{0},年龄是{1}".format(name,age) "输出结果 我的名字是浩叁佰,年龄19"
四,输出的各个数据 使用分隔符分割
print "-".join(["a","b","c"]) "输出结果 a-b-c"
python3版本:
知识预知
Python3版本输出将会调用print函数,即:print(values,sep,end,file,flush)函数内的参数意义如下(file与flush不要求掌握):
values(保证你可以一次性输出多个值,系统内置操作)
a,b,c=12,13,14
print(a,b,c) "输出结果: 12 13 14"
sep(分割符即值与值之间的符号,默认是一个空格)
a,b,c=12,13,14
print(a,b,c,sep="+") "输出结果: 12+13+14"
end(输出完毕后,以指定字符结束,默认是\n)
a,b,c=12,13,14
print(a,end="不等于") 总体输出结果 12不等于13
print(b) 14
print(c)
file(默认是标准的输入/也可以是一个写入的文件句柄)
flush(表示立刻输出/值为Bool类型)
补:输出将会进入 输出———缓冲区———控制台 这三层步骤,因此在缓冲台时会耗上几毫秒,但是用了flush则不用耗时,直接执行。 (了解即可),相关知识点 sleep()函数后续会进行讲解。
一,输出一个值/输出一个变量
a=12
print(a) "输出结果 12"
print(33) "输出结果 33"
二,输出多个变量
num1=34
num2=55
print(num1,num2) "输出结果 34 55"
三,格式化输出 (调用模板)
name='浩叁佰' age=19
print("我的名字是",name,",年龄是",age) "输出结果 我的名字是 浩叁佰 , 年龄 19"
print("我的名字是%s,年龄是%d"%(name,age)) "输出结果 我的名字是浩叁佰,年龄19"
print("我的名字是{0},年龄是{1}".format(name,age)) "输出结果 我的名字是浩叁佰,年龄19"
四,输出到文件中
f=open("phthon输入与输出.txt","w")
print("abc",file=f)
注:w表示可写入 phthon输入与输出.txt 表示新建文档名
知识点三、占位格式符:
1.凡是可以用[] 均表示可以省略的。
2.print “我的名字是%s,年龄是%d”%(name,age)
注意:完整写法 %[(name)][flags][width][.precision]typecode
(name)表示根据指定的名称(key)去寻找对应的值,格式化到字符串当中;width 表示占用的宽度。flags 不填表示右对齐 -表示左对齐 空格表示为与有负号的数字对齐(无论你输入多少个空格都等效于一个空格处理) 0表示用0来填充而不是用空格; .precision表示小数点后精度;typecode 表示类型 i/d 十进制 o 八进制 x 十六进制 e/E 科学计数法 f/F 浮点数(默认为小数点后6位) g/G 与c语言相同 s 传入对象str r 传入对象repr c 转化为unicode %% 当字符串中存在格式化标志时,需要用%%表示一个百分号。(建议小伙伴自己动手去试试以上情况)举例说明如下:
math=70
english=88
print("我的数学分数是%d,英语的分数是%d"%(math,english)) "输出结果 我的数学分数是70,英语的分数是88"
print("我的数学分数是%d,英语的分数是%d"%(english,math)) "输出结果 我的数学分数是88,英语的分数是70"
巧用(name) 举例说明:
math=70
english=88
print("我的数学分数是:%(ms)d,英语分数是:%(es)d"%({"es":english,"ms":math})) "输出结果 我的数学分数是:70,英语分数是:88"
巧用 width ,flags 举例说明:
math=70
english=88
print("我的数学分数是:%(es)4d,英语分数是:%(es)-4d"%({"es":english,"ms":math})) "输出结果 我的数学分数是: 88,英语分数是:88 "
print("我的数学分数是:%(es)-04d,英语分数是:%(es) 4d"%({"es":english,"ms":math})) "输出结果 我的数学分数是:88,英语分数是: 88"
english=-88
print("我的数学分数是:%(es)04d,英语分数是:%(es) 4d"%({"es":english,"ms":math})) "输出结果 我的数学分数是:-088,英语分数是: -88"
巧用 .precision 举例说明:
a=12.34
print(type(a)) "输出结果 <class 'float'>"
print("a的值为%.1f"%(a)) "输出结果 a的值为12.3"
巧用 typecode 举例说明:
print('hello, %r' % '123') "输出结果 "hello, '123'""
print("%c"%12346) "输出结果 〺"
print("%c"%97) "输出结果 a"
print("%d%%"%11) "输出结果 %11"
浩哥知识小补充:
1… 这是省略号,在Python中,一切皆对象。它也不例外。
在 Python 中,它叫做 Ellipsis 。
在 Python 3 中你可以直接写…来得到这玩意。
…
Ellipsistype(…)
<class ‘ellipsis’>
-关注微信公众号,浩叁佰教你学编程。-
-关注微信公众号,浩叁佰教你学编程。–