zoukankan      html  css  js  c++  java
  • python入门之用户交互、算术运算符

    1、与用户交互
    • 接收用户输入

      在Python3中:

      使用input将用户输入的所有内容都存成字符串类型

      username = input("请输入您的账号:")

      在Python2中:

      raw_input():用法与Python3的input一模一样 input(): 要求用户必须输入一个明确的数据类型,输入的是什么类型,就存成什么类型

    • 格式化输出

      目的:格式与内容分离,制作复杂的字符串内容模板,让某些位置变成动态可输入的。

      2.1%

      # 值按照位置与%s一一对应,少一个不行,多一个也不行
      res = "my name is %s my age is %s" %('yu',18)
      info = "my name is %s my age is %s" %(55,'yu')
      data = "my name is %s" %'yu'
      print(res n info n data)

      输出结果:
      my name is yu my age is 18
      my name is 55 my age is yu
      my name is yu

      # %s可以接收任意类型
      print("my name is %s" %'11')
      print("my name is %s" %'我爱你')
      print("my name is %s" %[1,12])
      print("my name is %s" %{'a':1})
      print("my name is %d" %18) # %d只能接受int类型

      输出结果:
      my name is 11
      my name is 我爱你
      my name is [1, 12]
      my name is {'a': 1}
      my name is 18

      2.2 str.format:兼容性好,可按照位置传值,也可以打破位置的限制传值

      # 按照位置传值 
      res = "my name is {} my age is {}".format('yu',18)
      print(res)

      输出结果:
      my name is yu my age is 18

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

      输出结果:
      我的名字是 egonegonegon 我的年龄是 1818

      # 打破位置传值
      res = "my name is {name} my age is {age}".format(name='yu',age=18)
      print(res)

      输出结果:
      my name is yu my age is 18
      # 了解知识

      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

      2.3 f:python3.5以后才推出

      x = input('your name: ') # yu
      y = input('your age: ') # 18
      res = f'我的名字是{x} 我的年龄是{y}'
      print(res) # 我的名字是yu 我的年龄是18
    2、基本运算符
    • 算数运算符:+、-、*、/、//、%、**

      print(1+1.2) # 2.2
    • 赋值运算符

      • 变量的赋值:=

        x = 1
        print(x) # 1
      • 增量赋值:+=、-=、*=、/=、//=、%=、**=

        age = 18

        age += 1

        print(age) # 19
      • 链式赋值

        x = y = z = 1

        print(x,y,z) # 1 1 1
      • 
        

      • 交叉赋值

        name = 18

        age = 'yu'

        name,age = age,name

        print(name,age) # yu 18
      • 解压赋值:将容器中的值分别取出来赋值给不同的变量名

        x,y,z,m,n=salaries=[111,222,333,444,555]

        print(x,y,z,m,n) # 111 222 333 444 555
      • # 解压字典默认解压出来的是字典的key

        x,y,z=dic={'a':1,'b':2,'c':3}

        print(x,y,z) # a b c
      • 引入‘*’

        # 没有对应的都会被*存成一个列表(注意:任何类型的解压都会存成一个列表),交给后面的变量名。

        # _: 通常指被废弃掉的变量,做一个占位符而已,约定俗成

        # *号再解压赋值中,只能出现一次

        *_,x,y,z=salaries=[111,222,333,444,555]

        print(x,y,z) # 333 444 555
    • 比较运算符>、>=、<、<=、==、!=

      print(1>2) # False
      pringt(1==1) # True
  • 相关阅读:
    time 模块学习
    day 14 自定义模块,常用模块 time .datetime ,time 模块
    day 13 课后作业
    day 12 课后作业
    day 11课后作业
    树状数组最值
    hdu 1059 Dividing bitset 多重背包
    XVII Open Cup named after E.V. Pankratiev. XXI Ural Championship
    最长公共子序列板/滚动 N^2
    Uva 10635
  • 原文地址:https://www.cnblogs.com/yding/p/12422478.html
Copyright © 2011-2022 走看看