文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python 用户交互

2023-01-30 21:57

关注

input是个内建函数,具体用法:接收用户输入的内容,输入的字符串,接收到就是字符串;输入的是数字,接收的就是数字


来个简单的用户名和密码输入的例子,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

username = input("username:")
password = input("password:")
print(username,password)

执行效果如下:

jiaohu.gif

由于密码输入的时候,是明文的,如果不想显示密码输入怎么办呢?

需要用到python标准库的getpass模块

python标准库: 就是默认自带的库,不用安装,直接import使用即可

代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

import getpass

username = input("username:")
password = getpass.getpass("password:")
print(username,password)

注意:

getpass 无法在PyCharm编辑器中运行,运行的时候,输入用户名之后,就好像卡住了一样,没法输出password:输入框

那么就需要在cmd中手动执行命令才可以:

使用win键+r 找到运行,输入cmd,直接回车,就打开了cmd命令行窗口

我的PyCharm里面的python脚本放在E:\python_script目录

切换到E盘,执行脚本

jiaohu3.gif


接下来,将一个稍微难一点的例子

要求输入对应的变量后,打印个人信息

例如:

------info of xia ------
Name: xia
Age: 25
Job: it
Salary: 5000


代码如下:

name = input("name:")
age = int(input("age:"))
job = input("job:")
salary = input("salary:")

info = '''
------info of %s ------
Name: %s
Age: %d
Job: %s
Salary: %s
''' % (name,name,age,job,salary)
print(info)

运行效果如下:

shuru1.gif

代码解释:

int() 表示将变量转换为数字类型

''' ''' 是python3的多行注释方法,也可以用来做格式化输出

%格式符(字符串格式化,string formatting)

格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型

常用的类型如下:


%s 表示string(字符串)
%d 表示数字,如果输入的不是数字,会报错

TypeError: %d format: a number is required, not st

可以帮助检查数据类型
%f 表示浮点(小数点)


在''' ''' 里面出现了5个格式符

所以%()里面出现了5个变量,是一一匹配的。


第二种写法,用fromat函数,使用关键字参数,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

name = input("name:")
age = int(input("age:"))
job = input("job:")
salary = input("salary:")

info = '''
------info of {_name} ------
Name: {_age}
Age: {_job}
Job: {_job}
Salary: {_salary}
'''.format(_name = name,
             _age  =  age,
             _job  = job,
             _salary  = salary)
print(info)

执行效果还是和上面一样


注意: 关键字参数值要对得上

_name对应的是上边声明的name变量,下面的依此类推


format的第二种使用方法,使用位置参数,代码如下:

#!/usr/bin/env python
# coding: utf-8
__author__ = 'www.py3study.com'

name = input("name:")
age = int(input("age:"))
job = input("job:")
salary = input("salary:")

info = '''
------info of {0} ------
Name: {0}
Age: {1}
Job: {2}
Salary: {3}
'''.format(name,age,job,salary)
print(info)

执行效果还是和上面一样


注意:位置参数不受顺序约束,且可以为{},只要format里有相对应的参数值即可,参数索引从0开.

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯