列表(list):存储多个数据,能方便获取整体或者局部
字典(dict):存储多个数据,能够方便的获取整体或者局部,数据具有对于解释
按K取值 info_dict = {'姓名': 'Tony', '年龄': 18, '爱好': 'read'} print(info_dict['姓名']) # Tony print(info_dict['年龄']) # 18 print(info_dict['家产']) # K不存在直接报错
布尔值(bool):用来表示事物是否可行、是否正确、是否合理(总共就两个值)
元组(tuple):存储多个数据,能方便获取整体或者局部,与列表的区别在于元组内数据值不能"直接修改" 而列表可以
集合(set):集合只用于去重和关系运算
1 = {} s1 = {} print(type(d1)) # dict print(type(s1)) # dict ss = set() # 必须使用关键字才能定义空集合 print(type(ss))
input() # 获取用户输入 name = input('请输入用户名:')
print()
+ 加 - 减 * 乘 / 除 // 整除 % 取模 **(次方) 幂指数
== 等于 != 不等于
逻辑运算符
成员运算符
身份运算符
变种情况
x = x + 1 # x += 1 x = x - 1 # x -= 1 x = x * 1 # x *= 1 x = x / 1 # x /= 1
x = 1 y = x x = z x = y = z = 1
l1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] a, b, *c, d = l1 print(a) # 1 print(b) # 2 print(c) # [3, 4, 5, 6, 7, 8] print(d) # 9
基本使用:需要使用关键字if编写分支结构
单if分支:条件成立之后执行子代码
if...else分支
if...elif...else分支
while循环(条件循环)
while...break语句
结束循环体的方式
1.自己写结束条件 利用while后面的条件判断
2.在循环体代码中添加关键字强制结束
while True: name = input('name>>>:') pwd = input('pwd>>>:') if name == 'jason' and pwd == '123': print('登录成功') # 强制结束 break # 直接结束break所在的循环体 (结束本层循环) else: print('用户名或密码错误')
count = 1 while count < 11: if count == 7: # 让count自增1 count += 1 # 跳过本次循环 直接开始下一次循环 continue print(count) count += 1
while True: print(123) while True: print(321) continue continue
count = 1 while count < 11: print(count) if count == 7: break count += 1 else: print('循环体按照提前定义好的条件正常结束 则会执行')
count = 10 while True: count *= 10 # 计算死循环 不允许出现 有问题 while True: name = input('name>>>:') # 有等待时间 允许出现 没有问题
for循环(for 变量名 in):用于迭代序列(即列表,元组,字典,集合或字符串)。
range方法:可以看成是一个能够帮助我们快速产生一个包含多个数据值的列表
for...break语句
# 1-10 7结束 for i in range(1,11): if i == 7: break print(i)
# 1-10 7跳过 for i in range(1, 11): if i == 7: continue print(i)
for i in range(10): print(i) if i == 5: break else: print('。。。')
整型int():整型就是整数,主要用于计算,没有内置方法
类型转换:int(待转换的数据)
进制转换:二进制、八进制、十进制、十六进制
十进制转换其他进制:
其他进制转十进制
print(float('123')) # 123.0 print(type(float('123'))) # float print(float('123a123')) print(float('123.12')) # 可以识别一个小数点 print(float('123.123.1.2.2.2.2.2.2')) # 不可以
print(float(True)) # 1.0 print(float(False)) # 0.0 print(int(True)) # 1 print(int(False)) # 0
print(str(123), type(str(123))) print(str(123.11), type(str(123.11))) print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4]))) print(str({'name': 'jason'}), type(str({'name': 'jason'}))) print(str(True), type(str(True))) print(str((1, 2, 3, 4)), type(str((1, 2, 3, 4)))) print(str({1, 2, 3, 4}), type(str({1, 2, 3, 4})))
s1 = 'hello jason!' print(s1[0]) # h print(s1[-1]) # ! print(s1[-2]) # n
s1 = 'hello jason!' print(s1[0:3]) # hel 从索引0的位置开始切到索引2的位置 顾头不顾尾 print(s1[-1:-4]) # 切片的顺序默认从左往右 print(s1[-1:-4:-1]) # !no 可以通过第三个参数的正负一 控制方向 print(s1[-4:-1]) # son 顾头不顾尾
s1 = 'hello jason!' print(s1[:]) # 所有 print(s1[::2]) # 针对整个字符串 隔一个取一个 print(s1[0:5:1]) # hello 默认1可以不写 print(s1[0:5:2]) # hlo
s1 = 'hello jason!' print(len(s1)) # print(len('hello jason!')) 12 空格也算字符
s1 = 'hello jason!' username = input('username>>>:') if username == 'jason': # 'jason ' == 'jason' print('登录成功') else: print('你不是jason!')
# 字符串调用内置方法,不是改变原数据,而是产生了新的数据 name = ' jason ' print(len(name)) # 9 print(name.strip(), len(name.strip())) # jason 5 res = name.strip() print(name, len(name)) # jason 9 print(res, len(res)) # jason 5 desc1 = '$$jason$$' print(desc1.strip('$')) # jason print(desc1.lstrip('$')) # jason$$ left print(desc1.rstrip('$')) # $$jason right username = input('username>>>:') username = username.strip() username = input('username>>>:').strip() # 先获取用户输入 再立刻移除首尾空格 最后绑定给变量名username if username == 'jason': # 'jason ' == 'jason' print('登录成功') else: print('你不是jason!')
info = 'jason|123|read' res = info.split('|') # 切割字符串之后结果是一个列表 print(res, type(res)) # ['jason', '123', 'read'] <class 'list'> name, pwd, hobby = info.split('|') # name, pwd, hobby = ['jason', '123', 'read'] print(info.split('|', maxsplit=1)) # 从左往右 只切一次 ['jason', '123|read'] print(info.rsplit('|', maxsplit=1)) # 从右往左 只切一次 ['jason|123', 'read']
s2 = 'HeLLo Big BAby 666 你过的还好吗' print(s2.lower()) # hello big baby 666 你过的还好吗 print(s2.upper()) # HELLO BIG BABY 666 你过的还好吗 print(s2.islower()) # 判断字符串中所有的字母是否是全小写 False print(s2.isupper()) # 判断字符串中所有的字母是否是全大写 False print('aaa'.islower()) # True print('AAA'.isupper()) # True code = 'JaSon666' print('这是网页给你返回的随机验证码:%s' % code) confirm_code = input('请输入验证码>>>:') code_upper = code.upper() # 将网页返回的验证码转大写 confirm_code_upper = confirm_code.upper() # 将用户填写的验证码转大写 if code_upper == confirm_code_upper: # 统一转大写 或者小写 if confirm_code.upper() == code.upper(): # 统一转大写 或者小写 再做比对 print('验证码正确') else: print('验证码错误')
# 方式1: 等价于%s占位,没有什么优势 res1 = 'my name is {} my age is {}' print(res1.format('jason', 18))
# 方式2: 支持索引取值,并且支持重复使用 res2 = 'my name is {0} my age is {1} {0} {1} {1} {1}' print(res2.format('jason', 18))
# 方式3: 支持关键字取值(按k取值),并且支持重复使用 res3 = '{name} {name} {age} my name is {name} my age is {age}' print(res3.format(name='jason', age=18))
# 方式4:推荐使用(******) name = 'jason' age = 18 print(f'my name is {name} my age is {age} {name} {age}')
res = 'sdashdjasdwjjkashdjasdjqwhasjdjahdjwqhdjkasdhwsdaadadadaprint(res.count('j')) print(res.count('ad'))
res = 'jason say ha ha ha heiheihei' print(res.startswith('jason')) print(res.endswith('heiheihei'))
res = 'jason jason jason SB SB SB' print(res.replace('jason', 'tony')) # 从左往右全部替换 print(res.replace('jason', 'tony', 1)) # 从左往右替换指定个数
res1 = 'hello' res2 = 'world' print(res1 + res2) print(res1 * 10) print(''.join(['hello', 'world', 'hahaha'])) print('|'.join(['hello', 'world', 'hahaha'])) print('$'.join(['jason', 'say', 666]))
print('123'.isdigit()) # True print('123a'.isdigit()) # False print(''.isdigit()) # False
res = 'hello world jason' print(res.index('d',0,5)) print(res.find('d',0,5)) # -1
res = 'my name is jason' print(res.title()) # My Name Is Jason print(res.capitalize()) # My name is jason
print(type(list(123))) print(type(list(123.22))) print(type(list('123243jasdsad')), list('123243jasdsad')) print(type(list({'name':"jason",'pwd':123})), list({'name':"jason",'pwd':123}))
l1 = ['jason', 'kevin', 'oscar', 'tony'] print(l1[0]) print(l1[-1])
l1 = ['jason', 'kevin', 'oscar', 'tony'] print(l1[0:3]) print(l1[:]) print(l1[-4:-1])
l1 = ['jason', 'kevin', 'oscar', 'tony'] print(l1[::2])
l1 = ['jason', 'kevin', 'oscar', 'tony'] print(len(l1)) # 4