前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >day05(数字类型,字符串类型,列表类

day05(数字类型,字符串类型,列表类

作者头像
py3study
发布2020-01-16 16:38:25
4390
发布2020-01-16 16:38:25
举报
文章被收录于专栏:python3python3

一,复习:

代码语言:javascript
复制
1.顺序结构、分支结构、循环结构
2.if分支结构

if 条件:
    代码块
elif 条件:
    代码块
else:
    代码块
# 可以被if转换为False:0 | '' | None | [] | {}

3.while循环结构
while 条件:
    循环体

# 1)可以通过改变循环变量,使循环条件不满足
# 2)当达到特定条件,直接使用break来强行结束所属循环

break : 结束所属循环
continue:结束所属循环的本次循环进入下一次循环

while...else...:当循环正常结束,else分支才会被执行(break结束的循环才叫不正常结束)

4.for循环(迭代器)
# for循环:用来循环容器对象的(左右多个值的对象)
# range(end)  # [0, end)
# range(start, end)  # [start, end)
# range(start, end, step)  # [start, end, 步长)
'''

二,今日内容:

代码语言:javascript
复制
'''
 数据类型的使用
 #int| complex | float | str | bool |list |dict |tuple | set
 
 重点:
  #数据类型的重点方法
   #可变与不可变类型
  #数据类型的相互转化
 
 非重点:
  #数据类型不常用的方法

'''

三,数字类型

代码语言:javascript
复制
'''
#了解:py2中小整数用int存放,大整数用long
#1,整数:

 num = -1000000000000000000000000000000000000000000000000   print(num, type(num))                #<class 'int'>

 #2,小数:

num = 3.14   print(num, type(num))

代码语言:javascript
复制
#3,布尔
 res = True
 print(res,type(ress),isinstance(res,int))    #isinstance 类似type()
 print(3.14 + True)                #4.140000000000001
代码语言:javascript
复制
#4,复数
 num = complex(5,4)   #5 + 4j
 print(num + (4 + 5j))               #(9+9j)

#重点:数字类型直接的相互转化******
 a = 10
 b = 3,74
 c = True
 print(int(a),int(b),int(c))
 print(float(a),float(b),float(c))
 print(bool(a),bool(b),bool(c))

'''

四,字符串的常见操作:

代码语言:javascript
复制
'''
#1,字符串的索引取值:字符串[index]

  #正向取值从0编号,反向取值从-1编号

  s1 = '123abc哈哈'
  print(id(s1))        #2131735840952
  print(s1[0],id(s1[0]))   #1 2131735688728
  t_s = '1'          
  prit(id(t_s))        #2131735688728

  #注:s1字符串中取出的‘1’的地址和新开辟空间的字符串‘1’为同一个地址

  #取出c
  print(s1[5],s1[-3])       #c c
 
 #2,字符串拼接:
  s2 = '你好'
  s22 = '帅'
  ss2 = s2 + s22
  print(ss2,id(s2),id(s22))  #你好帅 2131736767896 2131735862208 2131735987664
  
#3,字符串长度
  s3 = '12345'
  n1 = s3.__len__()
  print(n1)      #5
  n2 = len(s3)
  print(n2)      #5
  
#4,字符串切片:取子字符串-[::]-[start_index:end_index:step]
  s4 = '123abc66'
  sub_s = s4[0:6:]  
  print(sub_s)     #123abc
  sub_s = s4[0:6:2]
  print(sub_s)     #13b,2为步长
  sub_s = s4[::-1]
  print(sub_s)     #66cba321,-1为反向
  sub_s = s4[-1:-6:-1]
  print(sub_s)     #66cba

#5,成员运算:判断某字符串是否存在该字符串中
  s5 = '123abc66'
  ss5 = 12a
  print(ss5 in s5)      #False
  print(ss5 not in s5)  #True

#6,字符串循环(遍历)
  s6 = '123abc66'
  for x in s6:
      print(x)
代码语言:javascript
复制
'''

五,字符串重要方法:

代码语言:javascript
复制
'''
#1,索引(目标字符串的索引位置),index,从0开始

  s1 = '123abc66'
  print(s1.index('b'))    #4

#2,去留白(默认去两端留白,也可以去指定字符串)

  s2 = '***好 * 的***'
  print(s2.strip('*'))   #好 * 的
 
#3,计算子字符串个数
  
  s3 = '12312312'
  print(s3.count('1'))   #3

#4,判断字符串是否数字,只能判断正整数

  s4 = '123'
  print(s4.isdigit())   #True

#5,大小写转换
  
  s5 = 'Abc def'
  print(s5.upper())  #全大写
  print(s5.lower())  #全小写

#了解:
  print(s5.capitalize())  #首字母大写
  print(s5.title())     #每个单词首字母大写

#6,以某某开头或结尾
  
  s6 = 'https://www.baidu.com'
  r1 = s6.startswith('https:')
  r2 = s6.startswith('http:')
  r3 = s6.endswith('com')
  r4 = s6.endswith('cn')
  if(s1 or s2)and(r3 or r4):
    print('合法的链接')
  else:
    print('不合法的链接')

#7,替换
代码语言:javascript
复制
  s7 = 'egon say: he is da shuai b,egon!egon!egon!'
  new_s7 = s7.replace('egon', 'Liu某')    # 默认替换所有
  print(new_s7)
  new_s7 = s7.replace('egon', 'Liu某', 1)  # 替换一次
  print(new_s7)
代码语言:javascript
复制
代码语言:javascript
复制
# 8.格式化

  s8 = 'name:{},age:{}'
  print(s8.format('Owen', 18))    # 默认按位置
  print('name:{1},age:{1}, height:{1}'.format('Owen', 18))     # 标注位置,一个值可以多次利用,
  print('name:{n},age:{a}, height:{a}'.format(a=18, n="Zero"))  # 指名道姓
代码语言:javascript
复制
'''

六,字符串了解知识点:

代码语言:javascript
复制
'''
  1,find | rfind:查找子字符串索引,无结果返回-1
  2,lstrip :去左边留白
  3,rstrip :去右边留白
  4,conten | ljust | rjust | zfill : 按位填充 语法:center(所占位数,‘填充符号’)
  5,expandtabs:规定\t所占空格数
  6,captialize | title | swapcase : 首字母大写|单词首字母大写|大小写反转
  7,isdigit | isdecimal | isnumeric:数字判断
  8,isalnum | isalpha : 是否由字母数字组成 | 由字母组成
  9,isidentifier:是否是合法标识符
  10,islower | isupper : 是否全小写 | 全大写
  11,isspace:是否是空白字符
  12,istitle:是否为单词首字母大写格式
  
'''
'''
  案例:
代码语言:javascript
复制
  print('000123123'.find('1'))         #3
  print('000123123'.rfind('1'))      #6
  print('***000123123***'.lstrip('*'))
  print('***000123123***'.rstrip('*'))
  print('华丽分割线'.center(50,'='))   #======华丽分割线=====
  print('华丽分割线'.ljust(50,'='))    #华丽分割线========
  print('华丽分割线'.rjust(50,'='))      #======华丽分割线
  print('123'.zfill(10))          #0000000123
  print('%010d' % 123)           #0000000123
  print('000\t123'.expandtabs(30))   #000                           123
  print('AbC'.swapcase())         #aBc

  print('四'.isdigit())   #False
  print('四'.isdecimal()) #False 
  print('四'.isnumeric())  # True
  print('肆'.isnumeric())  # True
  print('Ⅳ'.isnumeric())  # True

  print('a_1'.isidentifier())    #True
  print('ABCc'.isupper())      #False
  print('ABCc'.islower())      #False
  print('Aooc Abc Aaa'.istitle()) #True
  print(' \n\r\t'.isspace())      #True
代码语言:javascript
复制
'''

 七:列表类型

代码语言:javascript
复制
'''
  #定义:
  1,list中可以存放多个值,可以存放所有类型的数据
  2,list中s有序的,可以通过索引取值

 #常规操作:

  #1,索引取值:列表名[index]
    s1 = [1,3,2]
    print(s1[0])   #1
    print(s1[-1])  #2

  #2,列表运算:得到的是新list
    s2 = [1,2,3]
    print(s2 + s2)    #[1, 2, 3, 1, 2, 3]
    print(s2 * 2)     #[1, 2, 3, 1, 2, 3]
    print(s2)       #[1, 2, 3]
  
  #3,list的长度:
    s3 = [3,4,1,2,5]
    print(len(s3))
  
  #4,切片:[start_index:end_index:step]
    s4 = [3,4,1,2,5]
    new_s4 = s4[::-1]     #5,2,1,4,3
    print(new_4)
    new_s4 = s4[1:4:]     #3,4,1,2
    print(new_s4)
    new_s4 = s4[-2:-5:-1]  #2,4  (包括了开头)
    print(new_s4)
  
  #5,成员运算
    s5 = [3,4,'1',2,5]
    print('1' in s5)    #True
    print(1 in s5)     #False
    print(5 not in s5)   False

  #6,循环
    for v in s5:
      print(v,type(v))

    #只打印数字类型的数据
    for v in s5:
      if isinstance(v,int):
        print(v,end=' ')    #3,4,2,5


   
 #增删查改
  
  #1,列表的增删改查
    ls = [1,2,3]

  #查
    print(ls)
    print(ls[l])

  #增
    ls.append(0)         #末尾增
    print(ls)           #[1,2,3,0]
    ls.insert(1,666)       #任意index前增加
    print(ls)           #[1,666,2,3,0]  
    ls.insert(len(ls),888)   #insert实行末尾增
    print(ls)           #[1,666,2,3,0,888]

  #改
    ls[1] = 6666        #[1,6666,2,3,0,888]
    
    
  #删除
    ls.remove(888)     #指定元素进行删除
    print(ls)      #[1,6666,2,3,0]
    res = ls.pop()   #默认从末尾删除,并返还删除的值
    print(res)      #0
    res = ls.pop(1)    #从指定索引删除,并返还删除的值
    print(res)      #6666  [1,2,3] 
  
  #了解
    del ls[2]      #指定索引进行删除
    print(ls)      #1,2
  #清空
    ls.clear()      #清空整个列表中的元素
    print(ls)      #[]
  
      
'''

八,列表需要了解的方法:

代码语言:javascript
复制
'''
  #1,排序:针对于同类型
    ls = ['3','1','2']
   ls.sort()    #默认正向排序ls
    print(ls)    #['1', '2', '3']
   ls.sort(revrece=True) #正向排序结果上翻转,形成倒序
    print(ls)    #['3', '2', '1']
  
 #2,翻转
   ls.reverce()  #按存储的顺序进行翻转
   print(ls)    #['2','1','3']
 
 #3,计算值的个数 => 列表中可以重复数据
  ls = [1, 2, 1, 2, 3, 1]  
  print(ls.count(1))    #3
  
 #4,整体增加,添加到末尾
  ls = [1,2,3]
  ls.extend('123')
  print(ls)          #[1, 2, 3, '1', '2', '3']
  ls.extend([0,1,2])
  print(ls)          #[1, 2, 3, '1', '2', '3', 0, 1, 2]
代码语言:javascript
复制
 #目标的索引位置,可以规定查找区间
  ls = [1,2,1,2,3,1]
 #找对象1,在索引3开始后找到索引6之前
  ind = ls.index(1,3,6)
  print(ls)          #5
  
'''
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一,复习:
  • 二,今日内容:
  • 三,数字类型
  • 四,字符串的常见操作:
  • 五,字符串重要方法:
  • 六,字符串了解知识点:
  •  七:列表类型
  • 八,列表需要了解的方法:
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档