Python从菜鸟到高手(6):获取用户输入、函数与注释
1. 获取用户输入
要编写一个有实际价值的程序,就需要与用户交互。当然,与用户交互有很多方法,例如,GUI(图形用户接口)就是一种非常好的与用户交互的方式,不过我们先不讨论GUI的交互方式,本节会采用一种原始,但很有效的方式与用户交互,这就是命令行交互方式,也就是说,用户通过命令行方式输入数据,程序会读取这些数据,并做进一步的处理。
从命令行接收用户的输入数据,需要使用input函数。input函数接收一个字符串类型的参数,用于作为输入的提示。input函数的返回值就是用户在命令行中录入的值。不管用户录入什么数据,input函数都会以字符串形式返回。如果要获取其他类型的值,如整数、浮点数,需要用相应的函数转换。例如,字符串转换为整数的函数是int,字符串转换为浮点数的函数是float。
下面的例子要求用户在命令行中输入姓名、年龄和收入。其中年龄是整数,收入是浮点数。输入完这3个值后,会依次在控制台输出这3个值。由于年龄和收入都是数值,所以在获取用户输入值后,需要分别使用int和float函数将input函数的返回值分别转换为整数和浮点数。如果年龄和收入输入的是非数值,会抛出异常。
name = input("请输入你的名字:") # 输入姓名,并把输入的结果赋给name变量
age = int(input("请输入你的年龄:")) # 输入年龄,并把输入的结果赋给age变量
salary = float(input("请输入你的收入:")) # 输入收入,并把输入的结果赋给salary变量
print("姓名:", name) # 输出姓名
print("年龄:", age) # 输出年龄
print("收入:", format(salary, "0.1f")) # 输出收入
运行程序,分别输入姓名、年龄和收入,按回车键后,会输出如下图所示的内容。
2. 函数
在前面的文章中曾经介绍过使用幂运算符(**)来计算一个数的n次方。事实上,可以用一个函数来代替这个运算符,这个函数就是pow,该函数可以传入两个参数,如果要计算x的y次方,那么pow函数的第1个参数应该是x,第2个参数应该是y。pow函数返回计算结果。例如,下面的代码计算2的6次方。
result = pow(2,6) # 计算结果:64
像上面这行代码使用函数的方式叫做函数调用。函数相当于可以重用的代码段,如果在程序中有多处使用这段代码,就应该将这段代码放到函数中,这样既可以实现代码重用,还会避免代码冗余。我们可以想象,如果不使用函数,同样的代码出现在程序中的多个地方,一旦要修改这些代码,那简直就是噩梦,需要改很多个地方。
Python语言提供了很多内建的函数以及通过模块提供的更多的函数,这些函数可以很大程度上实现代码复用,例如,abs函数用于获取数值的绝对值,round函数浮点数取整(四舍五入),cmath模块的sin函数用于计算弧度的正弦。
下面的例子演示了如果使用Python语言内建的函数以及模块提供的函数实现代码复用。
from cmath import sin # 导入cmath模块中的sin函数
print(pow(2,5)) # 运行结果:32
print(abs(-12)) # 运行结果:12
print(sin(3.14 / 2)) # 运行结果:(0.9999996829318346+0j)
print(round(3.6)) # 运行结果:4
print(round(3.4)) # 运行结果:3
程序运行结果如下图所示。
3. 注释
任何编程语言都有注释的功能。所谓注释,就是用一段文本描述代码的作用、代码的作者或是其他需要描述的东西。注释在程序编译时被忽略,也就是说,注释只在源代码中体现,编译生成的二进制文件中是没有注释的。
在Python语言中,注释分为单行注释和多行注释。单行注释用井号(#)开头,多行注释用3个引号(单引号或双引号)括起来。如果使用单行注释,井号后面的所有内容在编译程序时都会被忽略,如果使用多行注释,被引号括起来的内容在编译程序时都会被忽略。
在使用某些Python IDE时,默认会用ASCII编码格式保存源代码文件,这时如果源代码文件中含有中文,在运行Python程序时就会出错,这时需要使用注释标注当前源代码文件保存的编码格式。
用utf-8编码格式保存源代码文件
# coding=utf-8
用gbk编码格式保存源代码文件
# coding=gbk
建议读者使用utf-8编码格式保存源代码文件,因为utf8不仅仅能保存中文,还可以保存其他国家的文字,如韩文、日文。所以utf-8编码格式使用更普遍。
下面的例子演示了Python语言中单行注释、多行注释的用法
# coding=utf-8 当前Python源代码文件以utf-8编码格式保存
""" 多行注释(用双引号括起来)
作者:李宁
地点:earth
"""
# 用于计算2的4次幂 单行注释
print(2 ** 4)
''' 多行注释(用单引号括起来)
这段代码用于计算一个表达式的值
(1 + 2) * 20
'''
print((1 + 2) * 20)
《Python从菜鸟到高手》已经出版,开始连载了,购买送视频课程
Python从菜鸟到高手(6):获取用户输入、函数与注释的更多相关文章
- (一)第一个python语句、乘除法、获取用户输入、函数
一.print语句 >>> print "hello World!!" python2 和python3 的print是不一样的,python3的print(“h ...
- 《Python从菜鸟到高手》已经出版,开始连载了,购买送视频课程
好消息,<Python从菜鸟到高手>已经出版!!! JetBrains官方推荐图书!JetBrains官大中华区市场部经理赵磊作序!送2400分钟同步视频课程!500个案例,400道P ...
- Python从菜鸟到高手(2):清空Python控制台
执行python命令会进入Python控制台.在Python控制台中可以用交互的方式执行Python语句.也就是执行一行Python语句,会立刻返回执行结果. 当Python控制台输入过多的Pyt ...
- Python从菜鸟到高手(1):数字
本文主要内容: 1. 数字的基础知识 2. 大整数 3. 二进制.八进制和十六进制 4 数字的格式化输出 一.数字的基础知识 Python语言与其他编程语言一样,也支持四则运算(加.减.乘.除),以及 ...
- python学习:注释、获取用户输入、字符串拼接、运算符、表达式
注释 #为单行注释'''三个单引号(或者"""三个双引号)为多行注释,例如'''被注释的内容''' '''三个单引号还可以起到多行打印的功能. #ctrl+? 选中的多行 ...
- Python从菜鸟到高手(5):数字
1 基础知识 Python语言与其他编程语言一样,也支持四则运算(加.减.乘.除),以及圆括号运算符.在Python语言中,数字分为整数和浮点数.整数就是无小数部分的数,浮点数就是有小数部分的数. ...
- Python从菜鸟到高手(3):声明变量
变量(variable)是Python语言中一个非常重要的概念.变量的主要作用就是为Python程序中的某个值起一个名字.类似于"张三"."李四"." ...
- 16.Python input()函数:获取用户输入的字符串
input() 函数用于向用户生成一条提示,然后获取用户输入的内容.由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串. 例如 ...
- 使用scanner工具类来获取用户输入的信息
使用scanner工具类来获取用户输入的成绩信息. 步骤:1.导入java.util.Scanner包 2.创建Scanner对象 3.接受并保存用户输入的值 例子:通过用户输入来获取学生成绩 pac ...
随机推荐
- git 入门教程之备忘录[译]
备忘录[译] 创建 | Create 克隆一个已存在的仓库 | Clone an existing repository git clone git@github.com:snowdreams1006 ...
- struts2从认识到细化了解
目录 Struts2的介绍与执行流程 介绍: 执行流程: 运行环境搭建 基础示例 Action类的编写 介绍: 访问servlet API 补充: 配置文件 常见配置文件: 常量的配置: struts ...
- Unity端游无法下载资源问题
问题:用Unity编辑器Build的游戏(MyGame.exe)无法下载服务器上资源文件: starting www download: http://10.123.102.142/resources ...
- 关于正餐智能POS6.0.1.1改版后,点击反结账进入点菜界面后无法进行加菜的FAQ
适用版本:智能POS正餐V6.0.1.1+适用情况:点击反结账进入点菜界面后无法进行加菜.原因:为让报表统计的数据更准确解决方案:1.点击反结账,输入用户密码,进入点菜界面. 2.点击结算,进入收银台 ...
- 预热一下吧《实现Redis消息队列》
应用场景 为什么要用redis?二进制存储.java序列化传输.IO连接数高.连接频繁 一.序列化 这里编写了一个java序列化的工具,主要是将对象转化为byte数组,和根据byte数组反序列化成ja ...
- SAP S/4嵌入式分析——虚拟数据模型(VDM)
在本文中,我会通过CDS视图来介绍虚拟数据模型(Virtual Data Model,以下简称VDM). 在SAP HANA平台出现后,SAP的业务应用开发模式已经产生了变化,新的经验法则是:尽可能在 ...
- 查看linux系统是运行在物理机还是虚拟机方法
Windows:在CMD里输入:Systeminfo | findstr /i "System Model"如果System Model:后面含有Virutal就是虚拟机,其他都是 ...
- TCP三次握手四次挥手过程详解
http://blog.csdn.net/imilli/article/details/50620104 TCP头部: 其中 ACK SYN 序号 这三个部分在以下会用到,它们的介绍也在下面. ...
- Fluentd初探 简介与安装
Fluentd是一个开源的数据收集器,专为处理数据流设计,有点像 syslogd ,但是使用JSON作为数据格式.它采用了插件式的架构,具有高可扩展性高可用性,同时还实现了高可靠的信息转发. 据分(Y ...
- jvisualVM的使用
jvisualvm能干什么:监控内存泄露,跟踪垃圾回收,执行时内存.cpu分析,线程分析... jvisualvm已经被集成在jdk1.6以上的版本中(不是jre).自身运行需要最低jdk1.6版本, ...