一.运算符与表达式

1.表达式

  • 概述

          由变量,常量和运算符组成的式子称为表达式

          ALLOWED_EXT = ['.txt','.py']

2.算数运算符

  • 格式
 +  -  *  /  %  //  **
 加  减  乘  除  取余  整除  求幂

 

 

 

  • 格式
    # +
    a = 1
    b = 2
    c = a + b
    print(c)
    
    # -
    a = 1
    b = 2
    c = a - b
    print(c)
    
    # *
    a = 1
    b = 2
    c = a * b
    print(c)
    
    # /
    # print(4 / 2)
    
    # %
    print(10 % 3)
    
    # //
    print(4 // 2)
    print(10 // 3)
    
    # **
    print(2 ** 2) 

3.赋值运算符

  • 格式

    = 赋值

    变量 = 表达式

4.复合运算符

+= a += b a = a + b
-= a -= b a = a - b
*= a *= b a = a * b
/= a /= b a = a / b
%= a %= b a = a % b
//= a //= b a = a // b
**= a **=b a = a ** b

 

 

 

 

 

 

 

 

实例:

# +=
a = 1
b = 2

# a += b
a = a + b

# -=
a -= b
a = a - b

# *=
a *= b
a = a * b


# /=
# a /= b
# a = a / b
# print(a)

# //=
# a //= b
# a = a // b

# **=
# a **= b
# a = a ** b

# %=
# a %= b
# a = a % b
print(a)

5.真值与假值

  • 真值

    True / 1

  • 假值

    False / 0

# True
print(3 > 1)
print(3 < 1)
username = 'zhangsan'
password = 123456

if username == 'lucky' and password == 123456:
    print('欢迎',username)
else:
    print('请输入正确的用户名或者密码')

6.关系运算符

> >= < <= == !=
大于 大于等于 小于 小于等于 等于 不等于

 

 

 

实例:

print(1 > 1) # False
print(1 >= 1) # True
print(1 < 1) # False
print(1 <= 1) # True
print(1 == 1) # True
print(1 != 1) # False
print(ord('a'))  #97
print(ord('b'))  #98

7.逻辑运算符

and x and y 返回布尔值的True和False两侧为真才为真
or x or y 返回布尔值的真或假,一侧为真就为真
not not x 返回布尔值的真或假,真为假 假为真

 

 

 

 

 

 

实例:

# 逻辑与 and
print(True and True)  # True
print(True and False)  # False
print(False and False)  # False
print(1 and 0)  # False
print(3 > 1 and 1 > 3)  # False
print(3 > 1 and 1 > 3 and 3 > 1)  # False

# 逻辑或  or
print(True or True)  # True
print(True or False)  # True
print(False or False)  # False

print(1 or 0)  # True
print(3 > 1 or 1 > 3)  # True
print(3 > 1 or 1 > 3 or 3 > 1)  # True

# 逻辑非 not
print(not True)  # False
print(not False)  # True

print(not 'a')
print(not '')
print(not '0')
print(not '0.0...')

8.成员运算符

in 如果在指定的序列中找到对应的值 则为真
not in 如果在指定的序列中不存在对应的值 则为真

 

 

 

 

 

 

 

# in
nameList = ['彭于晏', '吴彦祖', '刘德华']
name = input('输入你喜欢的明星的名字:')
# 判断你喜欢的明星是否在nameList里 在为真 则输出print语句的内容
# if name in nameList:
# if name not in nameList:
if not name not in nameList:
    # 字符串格式化 把name变量发到对应的%s的位置上
    print('你喜欢的明星:%s今晚会来'%name)
# 当为假的时候 执行else
else:
    print('你喜欢的明星:%s今晚不会来'%name)

9.身份运算符

is 判断两个标识符是否引用同一个对象是的话 则为真 否则为假
is not 判断两个标识符是否不是引用同一个对象 不是的话 则为真 否则为假

 

 

 

 

 

# is 判断两个标识符是否引用同一个对象是的话 则为真 否则为假
a = 1
b = 1
# print(a is b)
# id 查看变量的存储地址
# print(id(a))
# print(id(b))

x = [1, 2, 3]
y = [1, 2, 3]
print(x is y)
print(x is y)
# print(id(x))
# print(id(y))

is 判断的是 两个变量是否引用同一个对象,也就是这个变量在内的地址为同一个我们看到的是两个 但实际存储为一个 使用id查看内存地址

 

二.数据类型

概述:

在python中变量是没有类型的,它的6类型取决于你所给的值

标准数据类型

  • Number 数值类型

  • String 字符串类型

  • List 列表

  • Tuple 元组

  • Set 集合

  • Dictionary 字典

 1.Number数值类型

  • int 整型(整数)

  • float 浮点型(小数)

  • bool 布尔型(True 和 False)

  • complx 复数

 实例:

# int
num1 = 123
num2 = 123.0
num3 = True
# 使用type函数查看类型
print(type(num1))  # int
print(type(num2))  # float
print(type(num3))  # bool

 关于数值计算的模块

函数名 说明

mach.ceil(num)

import math

向上取整

math.floor(num)

import.math

向下取整
round(num,[num]) 将值进行四舍五入,参数2可选可有可无
pow(x,y) x的y次幂
randrange(star,stop,step) 返回一个区间的随机数 start起始值 终止值,步长(默认1)
randint(start,end) 随机整数

 实例:

import math
num1 = 1.2
num2 = 1.5
num3 = 1.5234
# 向上取整
# print(math.ceil(num1))
# 向下取整
# print(math.floor(num1))
# print(round(num1))   #1
# print(round(num2))    #2
# print(round(num3, 2))   #2
# print(round(num3, 2))    #1.52
print(pow(2, 3, ))  # 8 
print(pow(2, 3, 2))   #0

import random  # 导入随机模块 (random
模块就是一个写了很多函数功能的py文件)
print(random.randrange(1, 10))
# 步长为2
print(random.randrange(1, 10, 2))
print(random.randint(1, 100))

 2.序列

概述:

序列是字符串,列表,元组的统称

特点:

  • 都可以通过一个索引得到一个元素

  • 默认索引值都是从零开始

  • 可以通过切片的方法得到一个范围内的元素

  • 有很多共同的操作(重复、切片、成员关系运算符)

 3.String字符串

python中的字符串都是使用单引号或者双引号括起来的称为字符串

  • 取单个值格式:

    变量[索引]

    索引值 从0开始 依次递增 最后一位可以使用-1获取

  • 字符串的截取格式:

    变量[头下标:尾下标]

  • 步长

    变量[头下标:尾下标:步长]

 示例:

str1 = 'lucky'
# 取值
print(str1[0])  # l
print(str1[1])  # u
print(str1[-1])  # y
print(str1[-2])  # k
# uc
# 1称为头下标  2称为尾下标 取值不包含尾下标
print(str1[1:3])
# luck
print(str1[0:4])
print(str1[0:-1])

# 获取
# 添加步长参数
print(str1[:])  # 获取所有
print(str1[0:])  # 获取所有
print(str1[:-1])  # 获取所有不包含最后一位
print(str1[:2])   # lu
print(str1[:3])   # luc
print(str1[::1])  # 获取所有 步长为1(默认为1)
print(str1[::2])  # 获取所有 步长为2 lcy

# *  将字符串str1 重复2次
# print(str1 * 2)

print('l' in str1)

 4.作业

题1:按照in和 not in的案例 写出一个 判断 .txt 不允许上传  但是.doc  .md .py 可以上传的案例

a = ['.doc', '.md', '.py']     
b = input('请输入文件名')            
if not b not in a:             
    print('成功上传%s文件'%b)        
else:                          
    print('上传%s文件失败,没有该文件名'%b) 

题2:将字符串lucky倒着输出

a = 'lucky'   
print(a[::-1])

题3:将lc从lucky中切片取出 

a = 'lucky'      
print(a[0:3:2])  
print(a[0:-1:2])