zoukankan      html  css  js  c++  java
  • 与用户交互的方式

    1、与用户交互

    程序与用户交互可想而知是必要的,否则程序存在的意义也就大大降低了,接下来介绍程序与用户的交互,输入与输出

     

    1.1接收用户输入

    在python3中只有 input一种输入方式,input会将用户输入的所有内容存入一个字符串类型数据中

    username = input("请输入您的账号:")    # ""内添加的是显示给用户看的信息
    print(username, type(username))     # 通过实验可以观察输出的变量的数据类型

    在python2.7中(了解)有input以及raw_input两种方式,其中raw_input与python3中的input功能完全相同,不多赘述,而python2.7中的input会按用户输入的内容的类型存入变量,变量类型即为输入的类型,这样的方式会使得程序员的操作变简单,而用户的操作变得复杂,要求用户严格按照数据类型的格式输入,产生极差的使用体验.

     

    1.2格式化输出

    在python中有3种格式化输出的方法.

    第一种: %s %d 此方法自python诞生至今一直能使用

    print("my name is %s,my age is %s" %("wu","18"))
    # %s可以按位置输入变量
    print("my name is %(name)s,my age is %(age)s" %{"name":"wu","age":18})
    # 以字典形式传入数据,可以避免位置,顺序的限制
    print("my age is %s" %([18,19]))
    # %s能传入任意数据类型
    print("my age is %d" %("18"))
    # %d只能传入数字,传入字符串会报错
    print("my age is %d" %(18.6))
    # %d只能传入数字(输入小数只显示整数),结果为my age is 18

     

    第二种: str.format 此方法python2.6之后的版本能使用(包含python3)

    此方法为最推荐使用的方法,由于速度以及兼容性都不错

     

    # 按照位置传值
    print("my name is {},my age is {}".format("wu", 18))
    # 可以按索引输出多次
    print("my name is {0}{0}{0},my age is {1}{1}".format("wu", 18))
    # 按照key-value传值
    print("my name is {name},my age is {age}".format(name="wu", age=18))

    进阶教程:

    
    # 填充与格式化
    # 先取到值,然后在冒号后设定填充格式:[填充字符][对齐方式][宽度]
    # *<10:左对齐,总共10个字符,不够的用*号填充
    print('{0:*<10}'.format('开始执行')) # 开始执行******
    ​
    # *>10:右对齐,总共10个字符,不够的用*号填充
    print('{0:*>10}'.format('开始执行')) # ******开始执行
    ​
    # *^10:居中显示,总共10个字符,不够的用*号填充
    print('{0:*^10}'.format('开始执行')) # ***开始执行***
    ​
    ​
    # 精度与进制
    ​
    print('{salary:.3f}'.format(salary=1232132.12351))  #精确到小数点后3位,四舍五入,结果为:1232132.124
    print('{0:b}'.format(123))  # 转成二进制,结果为:1111011
    print('{0:o}'.format(9))  # 转成八进制,结果为:11
    print('{0:x}'.format(15))  # 转成十六进制,结果为:f
    print('{0:,}'.format(99812939393931))  # 千分位格式化,结果为:99,812,939,393,931
    ​
    

    第三种: f"string" 此方法python3.5之后的版本能使用(不包含python2)

     

    x = "wu"
    print(f"my name is {x}")

     

     

     

  • 相关阅读:
    miniSpartan6, another Spartan 6 Kit
    XuLA/XuLA2
    Papilio Pro Boards
    STM32 Hardware Development
    Configuring spartan 6 using mcu and spi flash
    STM32 IO口双向问题
    [Projet] Module NFC
    Spartan-6 FPGA Configuration
    TRF7970A IC Communication Interface
    电动门/汽车遥控器拷贝机
  • 原文地址:https://www.cnblogs.com/achai222/p/12421790.html
Copyright © 2011-2022 走看看