一、用户交互

  用户交互方面,每种开发语言都有不同的方式,例如shell语言用的是,“read -p "What is  your name ? " ”。python中是什么样子的呢?请看示例:

name = input("What is your name ? ")
print("Hello ",name)

  python中使用的是函数input()进行用户交互,示例中通过input()函数提出问题“What is your name ?”,这时会等待用户的输入,当用户输入一个答案后,由input()函数接收到并传递给名为name的变量,并打印出结果。这是在python 3.x中交互方式,在python 2.x 中是另一个方法实现的,如下:

name = rawinput("What is your name ? ")
print("Hello ",name)

  

  在有一些登录场景,我们是需要输入密码的,但是我们通过传统的方式,获取信息,代码如下:

username = input("username : ")
passwd = input("password")

  但是这种方式输入的密码是以明文的方式,即可见的方式获取的,不太安全,所以在python中可以使用不可见的方式获取到密码,代码如下:

# 导入getpass模块
import getpass username = input("username :") # 使用getpass.getpass方法获取到输入的密码
password = getpass.getpass("password : ")

二、传递参数

  在上面的示例中,将接收到答案是通过print()函数输出的,那么答案的变量name是怎么样传递的呢?在python中有以下几种方式:

  示例1:

name = input("你叫什么名字?")
age = input("你多大了?")
job = input("你的工作是什么?") # 在python中可以用三组引号进行格式化 info = """
------ info of %s ------
name : %s
age : %s
job : %s
""" % (name,name,age,job) print(info)

  示例1中使用的方式为“$s”,即使用数据类型进行占位,后面按位置进行传递相应的变量。$s代表需要传递一个sting类型数据,python中还有其他类型数据$d,代表的是integer类型数据等。

  示例2:

name = input("你叫什么名字?")
age = input("你多大了?")
job = input("你的工作是什么?") info = ""
------ info of {_name_} ------
name : {_name_}
age : {_age_}
job : {_job_}
""".format(_name_=name,
      _age_=age,
      _job_=job) print(info)

  示例2中采用的是字符串格式化方式,在需要传递参数的位置使用“{关键名字}”,在后面使用format的方法对对应的名字进行变量赋值。这个参数又叫关键位置参数

  示例3:

name = input("你叫什么名字?")
age = input("你多大了?")
job = input("你的工作是什么?") info = ""
------ info of {0} ------
name : {1}
age : {2}
job : {3}
""".format(name,name,age,job) print(info)

  示例3中与示例2中类似,只是在format中指定参数的方式是通过位置进行传递参数,一一对应传递参数。所以又叫做位置参数

  以上三种示例的结果是一样的,其实在python中还有一个方式是通过"+"拼接的方式,例如:

name = input("你叫什么名字?")
age = input("你多大了?")
job = input("你的工作是什么?") info = """
------ info of """+name+""" ------
name : """+name+"""
age : """+age+"""
job : """+job+"""
""" print(info)

  但是不建议使用此种方式,使用此种方式的话,会内存空间消耗增多,效率低下。

1.3 Python基础知识 - 用户交互及传递参数的更多相关文章

  1. Python基础之用户交互、流程控制、循环语句

    python的简洁性真的令人叹为观止,没有JAVA那种输入还要导个包,不学不知道,一学吓一跳啊! 我在学这些基础的时候,会把python和java.c做对比,这样更好的理解记忆! 用户交互(输入) i ...

  2. python基础(4):用户交互、if判断、while循环、break和continue

    1. 用户交互 使⽤input()函数,可以让我们和计算机互动起来 语法: 内容 = input(提⽰信息) 这⾥可以直接获取到⽤户输入的内容 content = input("你吃了么?& ...

  3. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  4. python基础知识(一)

    Python基础知识 计算基础知识 1.cpu 人类的大脑 运算和处理问题 2.内存 临时存储数据 断电就消失了 3.硬盘 永久存储数据 4.操作系统 调度硬件设备之间数据交互 python的应用和历 ...

  5. Python 入门之Python基础知识

    Python 入门之Python基础知识 1.变量 (1)变量就是把程序运行的中间结果临时存在内存中,以便后续代码使用 (2)变量的作用: 昵称,就是代指内存中某个地址中的内容 a = 123 变量名 ...

  6. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  7. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  8. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  9. python基础知识部分练习大全

    python基础知识部分练习大全   1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py   #必须在首行 ...

随机推荐

  1. Swift学习笔记(1)--基本语法

    1.分号; 1>Swift不要求每个语句后面跟一个分号作为语句结束的标识,如果加上也可以,看个人喜好 2>在一行中写了两句执行语句,需要用分号隔开,比如 let x = 0; printl ...

  2. 在AT151上面测试串口通讯

    如下图所示,分别用putty打开两个窗口,一个是串口打开的,另外一个是网口连接的,分别是接收和发送,硬件上面RXD和TXD进行短接进行数据回流. 使用microcom工具,ctrl+x可以退出 参考文 ...

  3. 用Understand阅读 VS2010项目源码

    一.查看vs2010项目 打开understand,File-New-Project...-Next-Next [向导第三步,选"Import Visual Sudio project fi ...

  4. 洛谷 P2080 增进感情

    P2080 增进感情 题目背景 小明和小红的感情,是慢慢发展起来的. 题目描述 他们对对方分别有一个好感值.定义两人的亲密程度为两人的好感值之和. 如果他们的亲密程度达到V,则他们将走到一起.他们以后 ...

  5. android反编译odex文件

    关于android的反编译工具,相信大家并不陌生 如APK-TOOL,dex2jar APK-TOOL 用于反编译出布局文件 下载地址http://code.google.com/p/android- ...

  6. NumPy基础入门学习

    对于习惯使用了MATLAB的用户而言,学习NumPy这个python工具包付出的成本应该是不大的. NumPy的基本的object是多维数组,是一个有同样类型的数字等构成的一张表格,能够通过元组进行索 ...

  7. js -- fileData 实现文件断点续传

    前端实现文件的断点续传 一.一些知识准备 断点续传,既然有断,那就应该有文件分割的过程,一段一段的传. 以前文件无法分割,但随着HTML5新特性的引入,类似普通字符串.数组的分割,我们可以可以使用sl ...

  8. 高阶函数sort

    排序中我们经常会用sort这个高阶函数,我们今天就来讲讲这个sort的比较机制,对于数字来说我们只需要比较他们的大小就可以了 但是 var arr =[15,81,9,4,3]; alert(arr. ...

  9. OpenStack安装及监控配置视频教程

    OpenStack是一个美国国家航空航天局和Rackspace合作研发的云端运算软件,是一个自由软件和开放源代码项目,用来建立公共和私有云本,其软件使用比较复杂,本视频将讲解其安装和部分配置方法,以后 ...

  10. LuoguP2754 [CTSC1999]家园(分层图,最大流)

    题目背景 none! 题目描述 由于人类对自然资源的消耗,人们意识到大约在 2300 年之后,地球就不能再居住了.于是在月球上建立了新的绿地,以便在需要时移民.令人意想不到的是,2177 年冬由于未知 ...