• Python学习————与用户交互


    1、接收用户的输入
    在Python3:input会将用户输入的所有内容都存成字符串类型
    username = input("请输入您的账号:") # "egon"
    print(username, type(username))

    age = input("请输入的你的年龄: ") # age="18"
    print(age, type(age))
    age=int(age) # int只能将纯数字的字符串转成整型
    print(age > 16)

    int("12345")
    int("1234.5")
    int("1234abc5")


    在python2中:
    raw_input():用法与python3的input一模一样
    input(): 要求用户必须输入一个明确的数据类型,输入的是什么类型,就存成什么类型
    >>> age=input(">>>>>>>>>>>>>>>>>>>>>: ")
    >>>>>>>>>>>>>>>>>>>>>: 18
    >>> age,type(age)
    (18, <type 'int'>)
    >>>
    >>> x=input(">>>>>>>>>>>>>>>>>>>>>: ")
    >>>>>>>>>>>>>>>>>>>>>: 1.3
    >>> x,type(x)
    (1.3, <type 'float'>)
    >>>
    >>> x=input(">>>>>>>>>>>>>>>>>>>>>: ")
    >>>>>>>>>>>>>>>>>>>>>: [1,2,3]
    >>> x,type(x)
    ([1, 2, 3], <type 'list'>)
    >>>


    2。字符串的格式化输出
    2.1 %
    值按照位置与%s一一对应,少一个不行,多一个也不行
    res="my name is %s my age is %s" %('egon',"18")
    res="my name is %s my age is %s" %("18",'egon')
    res="my name is %s" %"egon"
    print(res)

    以字典的形式传值,打破位置的限制
    res="我的名字是 %(name)s 我的年龄是 %(age)s" %{"age":"18","name":'egon'}
    print(res)

    %s可以接收任意类型
    print('my age is %s' %18)
    print('my age is %s' %[1,23])
    print('my age is %s' %{'a':333})
    print('my age is %d' %18) # %d只能接收int
    print('my age is %d' %"18")

    2.2 str.format:兼容性好
    按照位置传值
    res='我的名字是 {} 我的年龄是 {}'.format('egon',18)
    print(res)

    res='我的名字是 {0}{0}{0} 我的年龄是 {1}{1}'.format('egon',18)
    print(res)

    打破位置的限制,按照key=value传值
    res="我的名字是 {name} 我的年龄是 {age}".format(age=18,name='egon')
    print(res)
    2.3 f:python3.5以后才推出
    x = input('your name: ')
    y = input('your age: ')
    res = f'我的名字是{x} 我的年龄是{y}'
    print(res)
    了解知识
    """
    2.4 填充与格式化
    先取到值,然后在冒号后设定填充格式:[填充字符][对齐方式][宽度]
    *<10:左对齐,总共10个字符,不够的用*号填充
    print('{0:*<10}'.format('开始执行')) # 开始执行******

    *>10:右对齐,总共10个字符,不够的用*号填充
    print('{0:*>10}'.format('开始执行')) # ******开始执行

    *^10:居中显示,总共10个字符,不够的用*号填充
    print('{0:*^10}'.format('开始执行')) # ***开始执行***
    2.5 精度与进制

    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

    """
  • 相关阅读:
    [慢查优化]慎用MySQL子查询,尤其是看到DEPENDENT SUBQUERY标记时
    Web开发基本准则-55实录-缓存策略
    Web开发基本准则-55实录-Web访问安全
    线上Java应用排查和诊断规范
    [慢查优化]建索引时注意字段选择性 & 范围查询注意组合索引的字段顺序
    [慢查优化]联表查询注意谁是驱动表 & 你搞不清楚谁join谁更好时请放手让mysql自行判定
    再说memcache的multiget hole(无底洞)
    RCA:未注意Curl-library Post 1024以上字节时的HTTP/1.1特性导致 HessianPHP 传输数据失败
    (研发系)职业化7个细节
    5·12和6·17两知名网站域名被劫持事件实施过程回放
  • 原文地址:https://www.cnblogs.com/x945669/p/12422023.html
Copyright © 2020-2023  润新知