







 7.5 range  
 
 range  可以生成数字供  for  循环遍历 , 它可以传递三个参数,分别表示 起始、结束和步长。 
 
 8.  数据类型高级  
  8.1  字符串高级  
  字符串的常见操作包括:  
  获取长度 :len len 函数可以获取字符串的长度。  
  查找内容 :find  查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次  
  出现的开始位置索引值,如果不存在,则返回 -1.  
  for  s  in  "hello" :  
  print ( s )  
  for  i  in  range ( 5 ):  
  print ( i )  
  >>>  range ( 2 ,  10 ,  3 )  
  [ 2 ,  5 ,  8 ]  
  >>>  for  x  in  range ( 2 ,  10 ,  3 ):  
  ...  print ( x )  
  ...  
  2  
  5  
  8 判断 :startswith,endswith  判断字符串是不是以谁谁谁开头 / 结尾  
  计算出现次数 :count  返回  str 在 start 和 end 之间 在  mystr 里面出现的次数  
  替换内容 :replace  替换字符串中指定的内容,如果指定次数 count ,则替换不会超过 count 次。  
  切割字符串 :split  通过参数的内容切割字符串  
  修改大小写 :upper,lower  将字符串中的大小写互换  
  空格处理 :strip  去空格  
  字符串拼接 :join  字符串拼接  
  8.2  列表高级  
  列表的增删改查  
  添加元素  
  添加元素有一下几个方法 :  
  append  在末尾添加元素  
  insert  在指定位置插入元素  
  extend  合并两个列表  
  append  
  append 会把新元素添加到列表末尾 
  
  
  查找元素  
  所谓的查找,就是看看指定的元素是否存在,主要包含一下几个方法:  
  in  和  not in  
  in, not in  
  python 中查找的常用方法为:  
  in (存在) , 如果存在那么结果为 true ,否则为 false  
  not in (不存在),如果不存在那么结果为 true ,否则 false  
 a = 3
b = 2# print(a + b)
#
# print(a - b)
#
# print(a * b)
#
# print(a / b)
# # 取整
# print(a // b)
# # 取余
# print(a % b)
# # 指数  幂
# print(a ** b)
#
# print((5 + 1) * 2)# 扩展
# 字符串的加法 是进行拼接的
# a = '123'
# b = '456'
# print(a + b)# 在python中 +两端都是字符串才可以进行加法运算
# a = '123'
# b = 456
# # print(a + b)
# print(a + str(b))# 字符串的乘法 是将字符串重复多少次
a = '我爱你 你爱我 蜜雪冰城甜蜜蜜'
print(a * 3)a = 10
print(a)b = c = 20
print(b)
print(c)# 多个变量赋值(使用逗号分隔)
d,e,f = 1,2,3
print(d)
print(e)
print(f)a = 1
# a加上一个2 打印结果
# a = a + 2
# print(a)a += 2   # a = a + 2
print(a)b = 1
# b 乘以一个3 打印结果
# b = b * 3
# print(b)b *= 3  # b = b * 3
print(b)c = 2
# c 减去一个1 打印结果
# c = c - 1
# print(c)c -= 1  # c = c - 1
print(c)d = 3# d 除以一个2 打印结果
# d = d / 2
# print(d)d /= 2 # d = d / 2
print(d)e = 3# e 整除一个2 打印结果
# e = e // 2
# print(e)e //= 2  # e = e // 2
print(e)# %  取余  取模  模余
f = 3
# f 对5来取余数 打印结果
# f = f % 5
# print(f)f %= 5 # f = f % 5
print(f)g = 5# 求一下5的3次幂
# g = g ** 3
# print(g)g **= 3   # g = g ** 3
print(g)# +=  -+  *=  /=  //=  %=  **=# 比较运算符返回的都是boolean类型的数据# == 恒等   判断==两边的变量是否是一致
# a = 10
# b = 10
# print(a == b)# != 不等  判断!=两边的变量是否不一致
# a = 10
# b = 10
# print(a != b)
# 扩展:<>  python2版本使用 python3 遗弃
# print(10 <> 20)# > 大于
print(10 > 20)
print(10 > 5)# >= 大于等于
print(10 >= 10)
print(10 >= 5)
print(10 >= 20)# < 小于
print(10 < 20)
print(10 < 5)# <= 小于等于
print(10 <= 10)
print(10 <= 20)# 比较运算符  ==  !=  > >= < <=# 逻辑运算符  and 与  or 或  not 非# and 与
# and两边的数据 必须全部都是true的时候 才会返回true 只要有一端返回的是false 那么就返回false
# and两端都是false的时候 返回的是false
print(10 > 20 and 10 > 11)
# and一端是true 一端是false 返回的是false
print(10 > 5 and 10 >11)
# and一端返回的是false 一端返回的是true  返回的是false
print(10 > 11 and 10 > 5)
# and 两端返回的都是true则返回的是的true
print(10 > 5 and 10 > 6)# or 或者
# or的两端只要有一端是true 那么结果就是true
# or的两端都是false 则返回的是false
print(10 > 20 or 10 > 21)
# or的两端前面的是true  后面的是false 那么返回的是true
print(10 > 5 or 10 > 20)
# or的两端 前面的是false 后面的是true  那么返回的是true
print(10 > 20 or 10 > 5)
# or的两端都是true  那么返回的是true
print(10 > 5 or 10 > 6)# not  非  取反
print(not True)
print(not False)
print(not (10 > 20))# and的性能优化
# a = 36
# a > 10 and print('hello world')
# and的性能优化 当and前面的结果是false的情况下 那么后面的代码就不再执行了
# a < 10 and print('hello world')# or的性能优化
# or 只要有一方为true 那么结果就是true
a = 38# a > 39 or print('你好世界')
a > 37 or print('你好 世界')# and 短路与
# or  短路或# 普通输出
print('故事里的小黄花,从出生那年就飘着')# 格式化输出
# scrapy框架的时候   excel文件  mysql  redis
age = 18
name = '红浪漫晶哥'# %s 代表的是字符串    %d 代表的是数值
print('我的名字是%s,我的年龄是%d' % (name,age))# password = input('请输入您的银行卡密码')
# print('我的密码是:%s' % password)name = input('请输入您的名字')
print('我的名字是:%s' % name)print('你可以开车了')# if关键字的语句结构
# if 判断条件:
#         代码(如果判断条件为true的时候执行if下面的内容)age = 17# 吉多  abc语言
# 如果您的年龄大于18了 那么你就可以开车了
if age > 18:print('你可以开车了')# True代表的是男  False代表的是女
gender = Trueif gender == True:# if下面的代码 必须是一个tab键 或者四个空格print('你是一个男性')# 在控制台上输入一个年龄  如果您的年龄大于18了 那么打印可以去网吧了# input返回的是字符串类型
age = input('请输入您的年龄')# 字符串和整数int是不可以比较的
if int(age) > 18:print('您成年了,可以去网吧了')# 案例中考察了三个知识点
# (1) 控制台输入
# (2) 强制类型转换
# (3) int和str是不能比较的# ifelse的语法
# if 判断条件:
#       判断条件为true的时候执行的代码
# else:
#       判断条件为false的时候执行的代码age = 17if age > 18:print('你可以去网吧了')
else:print('回家写作业去吧')# 在控制台上输入一个年龄   如果您的年龄大于18了  那么输出 欢迎光临红浪漫 男宾一位
# 否则那么输出  回家洗洗睡age = int(input('请输入您的年龄'))if age > 18:print('欢迎光临红浪漫,男宾一位')
else:print('洗洗睡吧')# 在控制台上输入您的成绩分数
# 如果你考了90以上  成绩为优秀
# 如果你考了80以上  成绩为良好
# 如果你考了70以上  成绩为中等
# 如果你考了60以上  成绩为合格
# 否则            成绩为不合格# score = int(input('请输入您的分数'))# if score >= 90:
#     print('优秀')
# if score >= 80:
#     print('良好')
# if score >= 70:
#     print('中等')
# if score >= 60:
#     print('及格')
# if score < 60:
#     print('不及格')# elif
score = int(input('请输入您的成绩'))if score >= 90:print('优秀')
elif score >= 80:print('良好')
elif score >= 70:print('中等')
elif score >= 60:print('及格')
else:print('不及格')# 循环字符串
# range(5)
# range(1,6)
# range(1,10,3)
# 循环一个列表# 一个一个的输出 叫做循环 也叫做遍历
# for
# 格式:  for 变量  in 要遍历的数据:
#             方法体# 循环字符串
# s = 'china'
# i是字符串中一个又一个的字符的变量
# s是代表的是要遍历的数据
# for i in s:
#     print(i)# range(5)
# range方法的结果 一个可以遍历的对象
# range(5)  0~4  左闭右开区间(0,5)
# for i in range(5):
#     print(i)# range(1,6)
# range(起始值,结束值)
# 左闭右开区间
# for i in range(1,6):
#     print(i)# range(1,10,3)
# range(起始值,结束值,步长)
# 1  4  7  10
# 左闭右开区间
# for i in range(1,11,3):
#     print(i)# 应用场景  会爬取一个列表返回给我们
# 循环一个列表
a_list = ['周杰伦','林俊杰','陶喆','庞龙']# 遍历列表中的元素
# for i in a_list:
#     print(i)# 遍历列表中的下标# 判断列表中的元素的个数
# print(len(a_list))
# 0 1 2
for i in  range(len(a_list)):print(i)# - 获取长度:len                     len函数可以获取字符串的长度。
# - 查找内容:find                    查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值,如果不存在,则返回-1.
# - 判断:startswith,endswith        判断字符串是不是以谁谁谁开头/结尾
# - 计算出现次数:count                返回 str在start和end之间 在 mystr里面出现的次数
# - 替换内容:replace                 替换字符串中指定的内容,如果指定次数count,则替换不会超过count次。
# - 切割字符串:split                  通过参数的内容切割字符串
# - 修改大小写:upper,lower           将字符串中的大小写互换
# -  空格处理:strip                   去空格
# - 字符串拼接:join                   字符串拼接# len  length的缩写  长度
s = 'china'
print(len(s))s1 = 'china'
print(s1.find('a'))s2 = 'china'
print(s2.startswith('h'))
print(s2.endswith('n'))s3 = 'aaabb'
print(s3.count('b'))s4 = 'cccdd'
print(s4.replace('c','d'))s5 = '1#2#3#4'
print(s5.split('#'))s6 = 'china'
print(s6.upper())s7 = 'CHINA'
print(s7.lower())s8 = '   a   '
print(len(s8))print(len(s8.strip()))s9 = 'a'
print(s9.join('hello'))# append  追加   在列表的最后来添加一个对象/数据
food_list = ['铁锅炖大鹅','酸菜五花肉']
print(food_list)food_list.append('小鸡炖蘑菇')
print(food_list)# insert  插入
char_list = ['a','c','d']
print(char_list)
# index的值就是你想插入数据的那个下标
char_list.insert(1,'b')
print(char_list)# extend
num_list = [1,2,3]
num1_list = [4,5,6]num_list.extend(num1_list)
print(num_list)city_list = ['北京','上海','深圳','武汉','西安']print(city_list)# 将列表中的元素的值修改
# 可以通过下标来修改,注意列表中的下标是从0开始的
city_list[4] = '大连'
print(city_list)# in 是判断某一个元素是否在某一个列表中
# food_list = ['锅包肉','汆白肉','东北乱炖']# 判断一下在控制台输入的那个数据 是否在列表中
# food = input('请输入您想吃的食物')
#
# if food in food_list:
#     print('在')
# else:
#     print('不在,一边拉去')# not inball_list = ['篮球','台球']# 在控制台上输入你喜欢的球类 然后判断是否不在这个列表中
ball = input('请输入您喜欢的球类')if ball not in ball_list:print('不在')
else:print('在')