python3_读书笔记_02_输入与输出

Python基础
----文本编辑器
----输入与输出

 


在交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。

强烈推荐:Visual Studio Code!

请注意: 不要用Word和Windows自带的记事本

Word保存的不是纯文本文件,

而记事本会自作聪明地在文件开始的地方加上几个特殊字符(UTF-8 BOM),结果会导致程序运行出现莫名其妙的错误。

 bom即byte order mark, 

BOM——ByteOrderMark,就是字节序标记

print('hello, Beyond')

注意: print前面不要有任何空格

然后,选择一个目录,例如C:\work

把文件保存为hello.py

就可以打开命令行窗口,

把当前目录切换到hello.py所在目录,就可以运行这个程序了:

C:\work>python hello.py
hello, Beyond

必须要以.py结尾,其他的都不行。

此外,文件名只能是英文字母、数字和下划线的组合。


如果当前目录下没有hello.py这个文件,运行python hello.py就会报错:

C:\Users\IEUser>python hello.py
python: can't open file 'hello.py': [Errno 2] No such file or directory

报错的意思就是,无法打开hello.py这个文件,因为文件不存在。


直接运行py文件

能不能像.exe文件那样直接运行.py文件呢?

在Windows上是不行的,

但是,在Mac和Linux上是可以的,

方法是在.py文件的第一行加上一个特殊的注释:

#!/usr/bin/env python3

或者

#!/usr/bin/python

#!/usr/bin/env python3

print('hello, Beyond')

然后,通过命令给hello.py以执行权限:

$ chmod a+x hello.py

就可以直接运行hello.py

./hello.py
hello, Beyond

小结

用文本编辑器写Python程序,然后保存为后缀为.py的文件,就可以用Python命令直接运行这个程序了。

 

Python的交互模式和直接运行.py文件有什么区别呢?

直接输入python进入交互模式,相当于启动了Python解释器,但是等待你一行一行地输入源代码,每输入一行就执行一行。

直接运行.py文件相当于启动了Python解释器,然后一次性把.py文件的源代码给执行了,你是没有机会以交互的方式输入源代码的。

 


输出

print()在括号中加上字符串,就可以向屏幕上输出指定的文字。

比如输出'hello, beyond',用代码实现如下:

>>> print('hello, beyond')

print()函数也可以接受多个字符串,用逗号“,”隔开,就可以连成一串输出:

>>> print('未闻花名', 'vwhm.net')
未闻花名 vwhm.net

print()会依次打印每个字符串,遇到逗号“,”会输出一个空格

 


print()也可以打印整数,或者计算结果:

>>> print(300)
300
>>> print(100 + 200)
300

因此,我们可以把计算100 + 200的结果打印得更漂亮一点:

注意: 逗号会变成空格

>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300

注意,对于100 + 200,Python解释器自动计算出结果300

但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。


输入

Python提供了一个input(),可以让用户输入字符串,并存放到一个变量里。

比如输入用户的名字:

>>> name = input()
Beyond

当你输入name = input()并按下回车后,Python交互式命令行就在等待你的输入了。

这时,你可以输入任意字符,然后按回车后完成输入。

输入完成后,不会有任何提示,Python交互式命令行又回到>>>状态了。

那我们刚才输入的内容存放到name变量里了。

可以直接输入name查看变量内容:

>>> name
'Beyond'

在计算机程序中,变量不仅可以为整数或浮点数,还可以是字符串,

因此,name作为一个变量就是一个字符串。

要打印出name变量的内容,除了直接写name然后按回车外,还可以用print()函数:

>>> print(name)
Beyond

有了输入和输出,我们就可以把上次打印'hello, world'的程序改一下:

name = input()
print('hello,', name)

运行上面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name变量中;

第二行代码会根据用户的名字向用户说hello,比如输入Beyond

C:\Workspace> python hello.py
Beyond
hello, Beyond

但是程序运行的时候,没有任何提示信息告诉用户:“嘿,赶紧输入你的名字”,这样显得很不友好。

input()可以让你显示一个字符串来提示用户

name = input('please enter your name: ')
print('hello,', name)

再次运行这个程序,你会发现,程序一运行,会首先打印出please enter your name:

这样,用户就可以根据提示,输入名字后,得到hello, xxx的输出:

C:\Workspace> python hello.py
please enter your name: Beyond
hello, Beyond

 


小结

输入是Input,输出是Output,

输入输出统称为Input/Output,或者简写为IO。

input()print()是在命令行下面最最基本的输入和输出,


任何一种编程语言都有自己的一套语法,编译器 或者 解释器 就是负责把符合语法的程序代码转换成CPU能够执行的机器码,然后执行。

Python的语法比较简单,采用缩进方式

# print absolute value of an integer:
a = 100
if a >= 0:
    print(a)
else:
    print(-a)

#开头的语句是注释,解释器会忽略掉注释。

其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块

但没有规定缩进是几个空格还是Tab。

按照约定俗成的惯例,应该始终坚持使用4个空格的缩进。

缩进的坏处就是“复制-粘贴”功能失效了

请注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

小结

Python使用缩进来组织代码块,请务必遵守约定俗成的习惯,坚持使用4个空格的缩进。

在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值