与用户交互
输入
获取用户输入
username = input('请输入您的用户名>>>:')
'''将input获取到的用户输入绑定给变量名username'''
print(username, type(username))
input获取到的用户输入全部都会转成字符串
输出
print()
1.括号可以使用逗号隔开多个元素一起打印
2.自带end参数 可以控制打印的排版
print(123,end='\n')
print(123,end='$')
格式化输出
将字符串中某些内容替换掉再输出就是格式化输出
res = '亲爱的%s你好!你%s月的话费是%s,余额是%s'
print(res % ('jason', 11, 100, 99999999999))
print(res % ('tony', 11, 200, -100))
print(res % ('kevin', 11, 500, -999))
"""
1.先使用占位符占位 %s
2.再使用%按照位置一一替换
"""
# %d只能给数字占位(了解)
print('%08d' % 123)
print('%08d' % 1)
print('%08d' % 666)
print('%08d' % 6666666666666)
运算符
算术运算符
// % **
比较运算符
== 判断值是否相等
!= 值不等于
赋值运算符
=
增量赋值(偷懒)
n = 666
n += 1 n = n + 1
n -= 1 n = n - 1
n *= 1 n = n * 1
n /= 1 n = n / 1
链式赋值(偷懒)
x = 666
y = x
z = y
x = y = z = 666
交叉赋值(笔试题)
m = 10
n = 999
方式1 利用中间变量
tmp = m
m = n
n = tmp
print(m, n) 999 10
方式2 交叉赋值
m, n = n, m
print(m, n) 999 10
解压赋值
name_list = ['jason', 'kevin', 'tony', 'jack']
name1 = name_list[0]
name2 = name_list[1]
name3 = name_list[2]
name4 = name_list[3]
解压赋值用法
name1, name2, name3, name4 = name_list 左右两边个数相等
name1, name2, name3 = name_list 少一个不行 False
name1, name2, name3, name4, name5 = name_list 多一个也不行 Ture
如果列表里的元素很多,这样用也很麻烦,下面就有更好的方法来取列表里的值
进阶用法:可以打破上述规律 特殊符号 *号
name1, *_, name2 = name_list
print(name1, _, name2) jason ['kevin', 'tony'] jack
'''
*号可以接受多余的元素 组织成列表赋值给后面的变量名
下划线单独作为变量名 通常表达的意思指向的值没有啥用,也可以用其他变量表示,比如*other
'''
逻辑运算符
在python逻辑运算符就三个
and 与
用于连接多个条件并且多个条件必须都成立才可以
or 或
用于连接多个条件并且多个条件只要有一个成立即可
not 非
取反
print(2 > 1 and 1 != 1 and True and 3 > 2)
print(2 > 1 or 1 != 1 or True or 3 > 2)
print(not True)
布尔值为False的有:
0,None,'',[],{}...
其他情况一律为True
and、or、not三者如果混用时,是存在优先级之分的,但在日常开发中我们无需记忆优先级,应该使用()来区分优先级、提升程序的可读性,把and两边用()括起来就好区分了。
>>> (3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)
False
但是我们在编写的时候应该人为的先规定好优先级。
成员运算
# 判断某个个体在不在某个群体内
关键字:in(在) not in(不在)
name_list = ['jason', 'kevin', 'tony', 'jackson']
# name = input('请输入您要查询的学生姓名>>>:')
# print(name in name_list)
# print(name not in name_list)
# print('j' in 'jason j j j n n')
print('jason' in {'username': 'jason', 'age': 18}) # False
字典默认暴露给外界的只有K
print('username' in {'username': 'jason', 'age': 18})
身份运算
# 判断两个数据 值和内存地址是否相等
符号: ==(只判断值) is(判断内存地址)
s1 = ['jason', 'kevin', 'tony', 'jackson']
s2 = ['jason', 'kevin', 'tony', 'jackson']
print(s1 == s2) # True
# print(id(s1),id(s2))
print(s1 is s2) # False
"""
值相等内存地址不一定相等
内存地址相等值一定相等
"""