day06学习笔记

1.今日内容概要

  • 数据类型的内置方法
  • 可变类型与不可变类型

2.内容详细介绍

  • 2.1 整数型
 01.类型转换
 int()  将括号内的数据转成整型
 int()  括号里的数据内部只能是纯数字
 02.进制转换
  关键字: bin(二进制) / oct(八进制) / hex(十六进制)
  print(bin(100)) print(oct(100))  print(hex(100))
  都是将10进制的100转换成相对应的进制数字
 注意:0b开头表示二进制数
      0o开头表示二进制数
      0x开头表示二进制数
  • 2.2 浮点型
# 身高 体重 薪资...
height = 183.1  # height = float(183.1)
print(float(183.1))
print(float('183.1'))
# print(float('hello world'))
print(float(183))  # 183.0
print(int(11.11))  # 11
print(int('11.11'))
  • 2.3 字符串类型
01 作用:名字,性别,国籍
02 定义: 在单引号/双引号/三引号内,由一串字符组成
  name = 'hello world!'
03 优先掌握的操作:
  1. 按索引取值(正向+反向):只能去
  ''' 索引从0开始的'''
  print(name[0])
  print(name[-1])
  2. 切片模式(顾头不顾尾)
  '''截取某一段内容'''
  print(name[1:4]) # 1 2 3 顾头不顾尾
  print(name[-1:-5:-1]) # 默认的切片方向都是从左往右 -1是修改方向,从右往左 !dlr 
  print(name[1:4:2]) # 第三个参数表示步长 
  3. 长度len
  '''统计字符串里面的字符个数'''
  print(len(name)) # 12 空格也算字符
  4. 成员运算in和not in 
   print('hello' in name)  # True
   print('wuxie' not in name) # True
  5. 移除指定的首尾字符strip()
  username = input('username>>>:')   #  wuxie  
  # 将首尾空格移除
  username = username.strip() # wuxie
  小案例:
  username = input('username>>>:').strip()
  if username == 'wuxie':
    print('登录成功!')
  else:
    print('登陆失败!')
  # print(username.strip('$')) # 即移除首尾指定的字符的
  # 移除首指定的字符
  print(n.lstrip('$'))  # 即左边的字符
  # 移除尾指定的字符
  print(n.rstrip('$'))  # 即右边的字符
 6.切分split
  '''按照指定的字符串'''
  res = 'wuxie|123|kou'
  print(res.split('|')) # ['wuxie','123','kou']
  # # 1.指定切割的字符不保留
  # # 2. 切割完后的结构是一个列表
  res.split('|',maxsplit=1) # ['wuxie','123|kou'] # maxsplit 从左往右切割指定的次数
  res.rsplit('|',maxsplit=1)) # ['wuxie|123','kou'] # 从右往左切割的次数
 7.循环
 for i in name:
    print(i) # 依次获取字符串单个的字符
  8.字母大小写
   res = 'my nAme is Wuxie'
  .upper() # 将所有的字母转成大写
   print(res.upper()) # MY NAME IS WUXIE
  .lower() # 将所有的字母转成小写
  print(res.lower()) # my name is wuxie
  小案例:
  code = 'XIuh8'
  my_code = input(code>>>:')
  if code.upper() == my_code.upper():
      print('验证码输入正确')
  else:
      print('请重新输入!')
  8.判断字符串首尾字符
  res = 'wuxie chenyu mengyi'
  .startswith() 判断字符串是否以什么开始
  print(res.startswith('wuxie')) # True
  .endswith()  判断字符串是否以什么结尾
  print(res.endswith('mengyi') # True
 9.字符串格式化输出
  %s %d 
  format
  第一种  与%s 一致 按照个数位置一一传值
  res = 'my name is {} my age is {}'
  print(res.format('wuxie',18))
  第二种 按照索引取值 可以反复使用 
  res = 'my name is {0} my age is {1} {2} {3}'
  print(res.format('wuxie',18))
  第三种 指名道姓取值 可以反复使用
  res = 'my name is {name} my age is {age} {name} {name} {name}'
  print(res.format(name='wuxie',age=18))
  10.统计字符串中 指定字符出现的个数
  .count()
  res = 'whjeraeruhdakfk'
  print(res.count('a'))
  print(res.count('a',1,10)) # 指定范围统计
  11.将所有的英文单词首字母大写
  .title()
  res = 'my name is wuxie'
  print(res.title()) # My Name Is Wuxie
  .capitalize() # 首字母大写,后面统一变小写
 12.判断是否是纯数字/非数字 特殊符号
  .isdigit # 判断是否是纯数字
  guess_age = input('请输入您的年龄>>>:')
  # 判断用户输入的是否是纯数字
  if guess_age.isdigit():
    # 将字符串的数字转成整型的数字
    guess_age = int(guess_age)
  else:
    print('请输入纯数字')
  .isalpha # 判断非数字 特殊符号
 13.替换
  .replace() 
  res = 'my name is wuxie wuxiie'
  print(res.replace('wuxie','tinatian')) # 全局替换
  print(res.replace('wuxie','tiantian',1)) # 局部替换
 14.将列表多个元素拼接成字符串
  res = ['wuxie','jiti','yucy','cym']
  res1 = ['wuxie','jiti','yucy','cym',123]
  print('|'.join(res)) # wuxie|jti|yucy|cym
  print('|'.join(res1)) # 只能是字符串类型拼接
  • 2.4 列表内置方法
  1. 什么是列表
  中括号括起来 内存可以存放多个元素
  元素与元素之间逗号隔开 元素可以是任意数据类型
  
  name_list = ['wuxie','wuzhifeng','chenyumeng'] 
  
  2. 索引取值
  print(name_list[0]) # wuxie
  3. 切片操作
  print(name_list[0:2])
  4. 统计列表元素的个数
  print(len(name_list))
  
 #  列表元素的CURD(增删改查)

  5. 在末尾追加单个元素
  name_list.append('kevin')
  print(name_list) #  ['wuxie','wuzhifeng','chenyumeng','kevin']
 6.插入元素
  name_list.insert(0,'jack')
  print(name_list) #  ['jack','wuxie','wuzhifeng','chenyumeng','kevin'] 
 7.扩展列表
  mz = [22,56,897,55,23]
 for in in mz:
   name_list.append(i)
 print(name_list)
 name_list.extend(mz) # extend等价与for+append
 8.删除操作
  del name_list[1]
  print(name_list) #  ['jack','wuzhifeng','chenyumeng','kevin'] 
 
  res1 = name_list.remove('jack') # 指名道姓的删除
  res = name_list.pop() # 默认尾部弹出元素
  res = name_list.pop(1) # 默认指定索引位置的元素

 9.统计列表元素某个元素出现的次数
  .count()
  mz = [65,66,98,69,62,36,06,46,25,96]
  print(mz.count(6)) 
 10.清空列表
  .clear()
  name_list.clear()
  print(name_lsit) # []
 11.排序
  .sort 默认升序
  mz.sort()
  print(mz) 
  .sort(reverse=True) # reverse=True 降序
  .reverse() 倒序 
  • 2.5 可变不可变
   可变类型
  值改变 内存地址不变
  不可变类型
  值改变 内存地址一定变
1.不可变类型
  a = 1 
  print(id(a)) # 140736875403024
  a = 2
  print(id(a)) # 140736875403024
2.可变类型
  a1 = [11,33]
  print(id(a1)) # 2133952624128
  a1.append(333)
  print(id(a1)) # 2133952624128

3.今日总结

  重点:字符串的操作和列表的增删查改
  难点:字符串的操作比较多,熟记
上一篇:python_数据结构与算法_DAY05&&DAY06


下一篇:Day06 Java方法