zoukankan      html  css  js  c++  java
  • 06、Python语法入门之与用户交互、运算符

    一、程序与用户交互

    1.1 什么是与用户交互?

      用户交互就是人往计算机中input/输入数据,计算机print/输出结果

    1.2 为什么要与用户交互?

      为了让计算机能够像人一样与用户沟通交流。比如ATM机,用户需要将帐号密码告诉计算机,于是我们的程序中必须有相应的机制来控制计算机接收用户输入的内容,并且输出结果。

    1.3 如何与用户交互?

      交互的本质就是输入、输出。

    1.3.1 输入input:

      在python3中input功能会等待用户的输入,用户输入任何内容,都存成字符串类型,然后赋值给等号左边的变量名。如果需要进行进一步的运算、比较的话,需要把用户输入的数据从字符串格式转化出来之后比较。

    username=input('请输入您的用户名:')
    请输入您的用户名:jack # username = "jack"

    password=input('请输入您的密码:')
    请输入您的密码:123 # password = "123"

    了解知识:
    1、在python2中存在一个raw_input功能与python3中的input功能一模一样
    2、在python2中还存在一个input功能,需要用户输入一个明确的数据类型,输入什么类型就存成什么类型

    l=input('输入什么类型就存成什么类型: ')
    输入什么类型就存成什么类型: [1,2,3]

    type(l)
    <type 'list'>

    1.3.2 输出print:

    print('hello world') # 只输出一个值
    hello world

    print('first','second','third') # 一次性输出多个值,值用逗号隔开
    first second third

    1.4 输出之格式化输出

    1.4.1 什么是格式化输出?

    把一段字符串里面的某些内容替换掉之后再输出,就是格式化输出。

    1.4.2 为什么要格式化输出?

    我们经常会输出具有某种固定格式的内容,比如:'亲爱的xxx你好!你xxx月的话费是xxx,余额是xxx‘,我们需要做的就是将xxx替换为具体的内容。

    1.4.3 如何格式化输出?

    这就用到了占位符,如:%s、%d,%s占位符:可以接收任意类型的值,%d占位符:只能接收数字。

    print('亲爱的%s你好!你%s月的话费是%d,余额是%d' %('tony',12,103,11))
    亲爱的tony你好!你12月的话费是103,余额是11

    二、基本运算符

    2.1 算术运算符

      python支持的算数运算符与数学上计算的符号使用是一致的,我们以x=9,y=2为例来依次介绍它们
      

    2.2 比较运算符

      比较运算用来对两个值进行比较,返回的是布尔值True或False。

    2.3 赋值运算符

      python语法中除了有=号这种简单的赋值运算外,还支持增量赋值、链式赋值、交叉赋值、解压赋值,这些赋值运算符存在的意义都是为了让我们的代码看起来更加精简。

    2.3.1 增量赋值

    2.3.2 链式赋值

      如果我们想把同一个值同时赋值给多个变量名,可以这么做:

    z=10
    y=z
    x=y
    x,y,z
    (10, 10, 10)

      链式赋值指的是可以用一行代码搞定这件事

    x=y=z=10
    x,y,z
    (10, 10, 10)

    2.3.3 交叉赋值

      我们定义两个变量m与n

    m=10
    n=20

      如果我们想将m与n的值交换过来,可以这么做

    temp=m
    m=n
    n=temp
    m,n
    (20, 10)

      
      交叉赋值指的是一行代码可以搞定这件事

    m=10
    n=20
    m,n=n,m # 交叉赋值
    m,n
    (20, 10)

    2.3.4 解压赋值

    salaries=[111,222,333,444,555] # 把五个月的工资取出来分别赋值给不同的变量名
    mon0=salaries[0]
    mon1=salaries[1]
    mon2=salaries[2]
    mon3=salaries[3]
    mon4=salaries[4]

    mon0,mon1,mon2,mon3,mon4=salaries # 解压赋值
    print(mon0)
    print(mon1)
    print(mon2)
    print(mon3)
    print(mon4)

    mon0,mon1,mon2,mon3=salaries # 对应的变量名少一个不行
    mon0,mon1,mon2,mon3,mon4,mon5=salaries # 对应的变量名多一个也不行

      引入*,可以帮助我们取两头的值,无法取中间的值
      取前三个值

    x,y,z,*=salaries=[111,222,333,444,555] # *会将没有对应关系的值存成列表然后赋值给紧跟其后的那个变量名,此处为
    print(x,y,z)
    print(_)

      取后三个值

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

      取指定三个值

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

      解压字典默认解压出来的是字典的key

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

  • 相关阅读:
    chapter23:软件安装RPM,SRPM与YUM之(0)-软件管理器的简介
    chapter22:源码与Tarball之(3)-函数库的管理
    chapter22:源码与Tarball之(2)-Tarball的管理与安装
    Akamai在内容分发网络中的算法研究(翻译总结)
    常用机器性能评估工具
    利用神经网络编辑图片的调研
    Redis命令总结及其基础知识讲述
    MySQL主从复制与主主复制
    MySQL查询优化
    降低Redis内存占用
  • 原文地址:https://www.cnblogs.com/zuiyouyingde/p/12424630.html
Copyright © 2011-2022 走看看