zoukankan      html  css  js  c++  java
  • Python导学基础(三)输入、格式化输出、基本运算符

    一:输入

    1、python3中的input

    inp_username=input("请输入您的密码:") # "18"
    
    print(inp_username)
    
    print(type(inp_username))
    
    age=input('your age: ') # age="18"
    
    age=int(age) # 转换数据类型  前提是:字符串中包含的必须是纯数字
    
    print(type(age))
    
    print(age > 10) # "18" > 10
    
    int('123123123asdf') # 报错整型必须纯数字
    

    2、在python2中的Input

    有一个input:要求程序的使用者必须输入一个明确的数据类型(了解)

    特点是:输入什么类型,就会被直接存成什么类型,程序中无需转换直接使用就好

    在python2中raw_input与python3的input用法是一模一样


    二:格式化输出

     print('asdfjasdfasfasdf')
     print("my name is %s my age is" %"egon") # 
    
     inp_name=input('请输入您的名字:')
     inp_age=input('请输入您的年龄:')
    
     print("my name is %s my age is %s" %(inp_name,inp_age))
    
    
     # %s是可以接收任意类型的
     print("my age is %s" %18)
     print("my age is %s" %[1,2,3])
    
    
     # 了解%d必须要求一个数字
     print("my age is %d" %18)
     # print("my age is %d" %"18")  错误
    

    三:基本运算符

    1、算数运算符

    print(10 + 3)
    
    print(10 - 3)
    
    print(10 * 3)
    
    print(10 / 3) # 保留小数部分
    
    print(10 // 3) # 只保留整数部分
    
    print(10 % 3) # 取余数,取模
    
    print(10 ** 3)
    

    2、比较运算符:

    x=10
    
    y=10
    
    print(x == y) # =一个等号代表的是赋值
    
    x=3
    
    y=4
    
    print(x != y) # 不等于
    
    x=3
    
    y=4
    
    print(x > y) # False
    
    print(x < y) # True
    
    print(x >= y) # False
    
    print(x <= y) # True
    
    print(10 <= 10) # True
    

    3、赋值运算符

    age=18
    
    age=age + 1 # 赋值运算
    
    age+=1 # 赋值运算符,age=age+1
    
    print(age)
    
    age *= 10  # age=age*10
    
    age = 10  # age=age10
    
    age /= 10  # age=age/10
    
    age //= 10  # age=age//10
    
    age -= 10  # age=age-10
    
    print(age)
    

    ​ 1、增量赋值

    x = 10
    x += 1
    

    ​ 2、交叉赋值

    a = 10
    b = 20
    print(a,b)
    
    temp=b  # temp=20
    b=a  # b = 10
    a=temp
    
    a,b = b,a  # python一行代码搞定
    print(a,b)
    

    ​ 3、链式赋值

    a=7
    b=a
    c=b
    d=c
    a = b = c = d = 7
    print(a,b,c,d)
    

    ​ 4、解压赋值: 取开头和结尾的几个值

    salaries=[33,44,55,66,77]
    x=salaries[0]
    y=salaries[1]
    z=salaries[2]
    a=salaries[3]
    b=salaries[4]
    # 左边变量名的个数与右面包含值的个数相同,多一个不行,少一个也不行
    
    x,y,z,a,b=salaries
    print(x,y,z,a,b)
    salaries=[33,44,55,66,77,88,99]
    x,y,z,*abc=salaries
    #x,y,z会对应列表salaries的前三个值,然后*会把剩余的值存放一个列表,然后赋值给abc
    
    print(x,y,z)
    print(abc)
    # _当变量名,代表该变量值是无用的
    x,y,z,*_=salaries # 取前三个值
    print(x,y,z)
    print(_)
    
    salaries=[33,44,55,66,77,88,99]
    *_,m,n=salaries # 取后两个值
    print(_)
    print(m,n)
    salaries=[33,44,55,66,77,88,99]
    x,y,z,*_,m=salaries # 取后两个值
    print(x,y,z)
    print(m)
    d={'a':1,'b':2,'c':3}
    x,y,z=d
    print(x,y,z)
    

    4、逻辑运算符

    ​ and: 逻辑与,and是用来连接左右两个条件,只有在左右两个条件同时为True,最终结果才为True,但凡有一个为False,最终结果就为False

    print(10 > 3 and True)
    print(10 < 3 and True and 3 > 2 and 1==1)
    

    ​ or: 逻辑或,or是用来连接左右两个条件,但凡有一个条件为True,最终结果就为True,除非二者都为False,最终结果才为False。

    print(True or 10 > 11 or 3 > 4)
    print(False or 10 > 11 or 3 > 4)
    print(False or 10 > 9 or 3 > 4)
    
    # False      or     (True and True)
    # False      or      True
    res=(True and False) or (10 > 3 and (3 < 4 or 4==3))
    print(res)
    

    ​ not: 把紧跟其后那个条件运算的结果取反

    print(not 10 > 3)
    
    # False      or     (False and False)
    # False      or     False
    res=(True and False) or (not 10 > 3 and (not 3 < 4 or 4==3))
    print(res)
    

    ①、优先级:not > and > or

    1、not与紧跟其后的那个条件是不可分割的

    2、如果条件语句全部由纯and、或纯or链接,按照从左到右的顺序依次计算即可

    print(True and 10 > 3 and not 4 < 3 and 1 == 1)
    print(False or 10 < 3 or not 4 < 3 or 1 == 1)
    

    3、对于既有and又有or链接的语句,以and为中心把左右两个条件用括号括起来

    res=(10 == 9 and 0 < 3) or ('' == 'egon' and 0> 3) or not True or ('egon' == 'dsb' and 333 > 100) or 10 > 4
    print(res)
    

    ②、短路运算=>偷懒原则

    ​ 所有的数据类型的值都自带布尔值,所以值可以直接被当成条件使用0、None、空三种值对应的布尔值为False,其余全为True

    if 0:
    	print('ok')
    else:
    	print('====>')  # ====>
    
    if 3 and []:
    	print('真')
    else:
        print('假')  # 假
    
    and运算会返回当前计算位置的值
    res=0 and 123  # 0
    res=111 and 123  # 123
    print(res)  
    
    if 111 and 123:
    	print('ok')  # ok
    else:
    	print('no')
    
    x=''
    if x:
    	print('不为空')
    else:
    	print("为空")   #为空
    
    print(1 or 0) # 1
    print(0 and 2 or 1) # 1
    print(0 and 2 or 1 or 4) # 1
    

    5、身份运算符( 以后补充)

  • 相关阅读:
    Django rest_framework之序列化(serializers)
    异常处理
    Django之ModelForm通过ajax用户登录验证
    Django之ModelForm用户登录注册
    Django之Model操作
    Jenkins+Maven+SVN+Nexus 搭建持续集成环境
    nginx rewrite域名跳转访问XML接口
    python自动发布应用脚本
    Django基础
    Web安全概述
  • 原文地址:https://www.cnblogs.com/Lance-WJ/p/12359609.html
Copyright © 2011-2022 走看看