一、可变与不可变类型
1、可变类原值型:只改变,但id不变,证明就是在改变原值,是可变类型
2、不可变类型:值改变,但id也跟着改变,证明是产生了新的值,是不可变类型
 x=
print(id(x))
x=
print(id(x))
l=['a','b']
print(id(l))
l[]='A'
print(l)
print(id(l))
二、整形int

1、用途:用来记录年龄、等级、数量
2、定义方式age=10#age=int(10)
3、数据类型转换x=int('123456')>>>字符串转成整形输出
print(x,type(x))
常用操作:数学运算和比较运算 三、 浮点型float
1、用途:用来记录身高、工资、体重
2、定义方式:salary=10.1#salary=float(10.1)
3、数据类型转换:只能讲包含小数的字符串转成float x=float('3.1')>>>print(x,type(x))
操作方式:数学运算和比较运算 四、字符串str
1、用途:记录描述性质的状态
2、定义方式:在单引号、双引号、三引号内包含一串字符串
msg='hello'#msg=str('hello') # 数据类型转换:所以类型都可以被str转成字符串类型
# res=str([]1,2,3)>>>print(res,type(res)) 3、常用操作+内置方法:优先掌握的操作:*****
3.1、按索引取值(正向取+反向取):只能取msg='hello'>>>print(msg[0],type(msg[0]))
 '''
msg='hello'
print(msg[],type(msg[]))
print(msg[-])
print(msg[-])#反取向
msg[]='H'#只能取
'''
# 3.2、切片(顾头不顾尾,步长)
 '''
msg='hello world'
res=msg[::]#
print(res)
print(msg) 正向取:
msg='hello world'
res=msg[:]
res=msg[::]#
print(res)
反向取:
msg='hello world'
res=msg[-:-:-]
res=msg[-::-]
res=msg[::-]
print(res)
'''
# 3.3、长度len
 '''
msg='hello world'
print(len(msg))
'''
3.4、成员运算in和not in:判断一个子字符是否存在于大的字符串中
 '''
msg='hello world'
print(len(msg))
'''
3.5、移除空白strip:用来去除字符串左右两边的字符

  '''
msg=' hello '
print(msg.strip())
print('****888eg**on*****'.strip('*'))#只能去除字母左右两边的*
print('****+-\、/egon#@%&$*****'.strip('*+-\/、$#@%&'))#去除字母左右两边的符号
name=input('username>>>:').strip()
pwd=input('password>>>:').strip()
if name=='egon' and pwd=='123':
print('login successful')
1else:
print('出错了')
'''


3.6、切分split,针对有规律的字符串,按照某种分隔符切成列表

 1 '''info='egon:18:male'
2 res=info.split(':')
3 print(res,type(res))
4 print(res[0],res[1])
5
6 cmd='get|a.txt|3333'
7 print(cmd.split('|',1))'''
8 # 用:号做连接符将纯字符串的列表拼接成一个字符串
9 # l=['egon','18'','male'']
10 # res=l[0]+':'+l[1]+':'+l[2]
11 # res=':'.join(l)
12 # print(res)


需要掌握的操作
 # 1、strip、lstrip、rstrip
# print('******egon*******'.strip('*'))
# print('******egon*******'.lstrip('*'))
# print('******egon*******'.rstrip('*')) # 2、lower,upper
# print('ABC123'.lower())
# print('ABC123'.upper()) # 3、startwith,endwith
# msg='alex is dsb'
# print(msg.startwith('alex'))
# print('msg.endwith('b')')

 4、format的三种玩法
# res = 'my name is %s my age is %s' % ('egon', 18)
# print(res)
# res='my name is {name} my age is {age}.format(age=18,name='egon')
# print(res) # 了解
# res = 'my name is {} my age is {}'.format('egon',18)
# res = 'my name is {0} my age is {1}'.format('egon',18)
# print(res)
  5、split,rsplit
# msg='a:b:c:d'
# print(msg.split(':',1))
# print(msg.rsplit(':',1))

 6、replace
# msg='kevin is kievn is asdjk'
# res=msg.replace('kivin','as',1)
# print(res)

 7、isdigit
# print('123123'.isdigit()) #如果字符串是由纯数字组成的,则返回Ture
# print('123123 '.isdigit()) #Flase
# print('123123asdc'.isdigit()) #Flase
# print('123123.2'.isdigit()) #Flase
# score=input('>>>:').strip() #score='sdjsfjskk'
# if score.isdigit():
# score=int(score)
# if score>=90:
# print('优秀')
# else:
# print('差')
# else:
# print('必须输入数字')
五、字符串str
1、用途:记录描述性质的状态
2、定义方式:在单引号、双引号、三引号内包含一串字符串
msg='hello'#msg=str('hello') # 数据类型转换:所以类型都可以被str转成字符串类型
# res=str([]1,2,3)>>>print(res,type(res)) 3、常用操作+内置方法:优先掌握的操作:*****
3.1、按索引取值(正向取+反向取):只能取msg='hello'>>>print(msg[0],type(msg[0]))
 '''
msg='hello'
print(msg[0],type(msg[0]))
print(msg[-1])
print(msg[-2])#反取向
msg[0]='H'#只能取
'''
3.2、切片(顾头不顾尾,步长)
 '''
msg='hello world'
res=msg[0:3:1]#0 1 2
print(res)
print(msg) 正向取:
msg='hello world'
res=msg[:]
res=msg[::2]#0 2 4 6 8 10
print(res)
反向取:
msg='hello world'
res=msg[-1:-12:-1]
res=msg[-1::-1]
res=msg[::-1]
print(res)
'''
3.3、长度len
  ''' msg='hello world' print(len(msg)) ''' 
3.4、成员运算in和not in:判断一个子字符是否存在于大的字符串中
 '''
msg='kexin is dsb'
print('kevin'in msg)
print('dsb'in msg)
print('aaa' not in msg)
print(not 'aaa' in msg)
'''
3.5、移除空白strip:用来去除字符串左右两边的字符
 '''
msg=' hello '
print(msg.strip()) print('****888eg**on*****'.strip('*'))#只能去除字母左右两边的*
print('****+-\、/egon#@%&$*****'.strip('*+-\/、$#@%&'))#去除字母左右两边的符号 name=input('username>>>:').strip()
pwd=input('password>>>:').strip()
if name=='egon' and pwd=='123':
print('login successful')
else:
print('出错了')
'''
3.6、切分split,针对有规律的字符串,按照某种分隔符切成列表
 '''info='egon:18:male'
res=info.split(':')
print(res,type(res))
print(res[0],res[1]) cmd='get|a.txt|3333'
print(cmd.split('|',1))'''

 用:号做连接符将纯字符串的列表拼接成一个字符串
# l=['egon','18'','male'']
# res=l[0]+':'+l[1]+':'+l[2]
# res=':'.join(l)
# print(res)
 3.7、循环
# for item in 'hello':
# print(item)
# 需要掌握的操作
 # 1、strip、lstrip、rstrip
# print('******egon*******'.strip('*'))
# print('******egon*******'.lstrip('*'))
# print('******egon*******'.rstrip('*'))
 # 2、lower,upper  # print('ABC123'.lower())  # print('ABC123'.upper()) 
 # 3、startwith,endwith
# msg='alex is dsb'
# print(msg.startwith('alex'))
# print('msg.endwith('b')')

 # 4、format的三种玩法
# res = 'my name is %s my age is %s' % ('egon', 18)
# print(res)
# res='my name is {name} my age is {age}.format(age=18,name='egon')
# print(res) # 了解
# res = 'my name is {} my age is {}'.format('egon',18)
# res = 'my name is {0} my age is {1}'.format('egon',18)
# print(res)
# 5、split,rsplit
# msg='a:b:c:d'
# print(msg.split(':',1))
# print(msg.rsplit(':',1))

 # 6、replace
# msg='kevin is kievn is asdjk'
# res=msg.replace('kivin','as',1)
# print(res)

 # 7、isdigit
# print('123123'.isdigit()) #如果字符串是由纯数字组成的,则返回Ture
# print('123123 '.isdigit()) #Flase
# print('123123asdc'.isdigit()) #Flase
# print('123123.2'.isdigit()) #Flase
# score=input('>>>:').strip() #score='sdjsfjskk'
# if score.isdigit():
# score=int(score)
# if score>=90:
# print('优秀')
# else:
# print('差')
# else:
# print('必须输入数字')

 # 了解的操作
#1、find,rfind,index,rindex,count
# print('123 ke123ke'.find('ke'))
# print('123 ke123ke'.rfind('ke'))
# print('123 ke123ke'.index('ke'))
# print('123 ke123ke'.rindex('ke')) # print('123 ke123ke'.find('xxxx'))
# print('123 ke123ke'.index('xxxx'))
# print('123 ke123ke'.count('ke',0,6)) #2、center,ljust,rjust,zfill
# print('egon'.center(50,'*'))
# print('egon'.ljust(50,'*'))
# print('egon'.rjust(50,'*')) # print('egon'.rjust(50,'0'))
# print('egon'.zfill(50)) #3、captalize,swapcase,title
# print('abcdef dddddd'.capitalize())
# print('abcAef dddddd'.swapcase())
# print('abcAef dddddd'.title()) #4、is数字系列
num1=b'' #bytes
num2='' #unicode,python3中无需加u就是unicode
num3='四' #中文数字
num4='Ⅳ' #罗马数字 # bytes与阿拉伯数字组成的字符串
# print(num1.isdigit())
# print(num2.isdigit())
# print(num3.isdigit())
# print(num4.isdigit()) # 阿拉伯数字组成的字符串
# print(num2.isdecimal())
# print(num3.isdecimal())
# print(num4.isdecimal()) # 阿拉伯数字\中文\罗马组成的字符串
# print(num2.isnumeric())
# print(num3.isnumeric())
# print(num4.isnumeric()) #5、is其他
# ======================================该类型总结====================================
# 存一个值 # 有序 # 不可变
# msg=' hello '
# msg.strip()
# print(msg)

六、列表list

1、用途:按照位置记录多个值,索引对应值
2、定义方式:在[]内用逗号分隔开多个任意类型的值
 # l=['a',11,11.3]# l=list['a',11,11.3]
# 数据类型转换:但凡能够被for循环的数据类型都可以传给list,被其转换成列表
# res=list('hello')# >>>'h','e','l','l','o'
# res=list(123) #不可以被for循环
# print(res)
# res=list({'a':1,'b':2,'c':3})
# print(res)
 
3、常用操作+内置的方法(优先掌握的操作)
3.1、按照索引存取值(正向存取+反向存取):即可存也可取
 # l=['a','b','c','d','e']
# print(l[0])
# print(l[-1])
# print(id(l))
# l[0]='A'
# print(id(l))# 输出id相同,属于可变型
#  强调--------!!!!!!!:对于不存在的索引会报错
 # l[5]='AAAAA'# 报错
# dic={"k1":111}
# dic['k2']=2222
# print(dic)
3.2、切片(顾头不顾尾,步长)
  # l=['a','b','c','d','e'] # print(l[1:4]) # print([::-1])  3.3、长度
  # l=['a','b','c','d','e'] # print(len(l))  3.4、成员运算in和not in
  # l=['a','b','c','d','e'] # print('a'in l)  3.5、追加与insert
 # l=['a','b','c','d','e']
# l.append('xxx')
# l.append('yyy')
# print(l)
# l.insert(0,'xxx')
# print(l)
3.6、删除
 # l=['a','b','c','d','e']
# del是一种通用的删除操作,没有返回值
# del l[0]
# print(l ) # dic={'k1':1}
# del dic['k1']
# print(dic) # l.remove# (指定要删除的那个元素,没有返回值)
# res=l.remove('b')
# print(l)
# print(res) # l.pop# (指定要删除的那个元素的索引,可以返回刚刚那个删除掉的元素)
# l=['a','b','c','d','e']
# l.pop(-1)
# res=l.pop(1)
# print(l)
# print(res)
3.7、循环
 # l=['a','b','c','d','e']
# for item in l:
# print(item)
# 练习:队列--先进先出
# l=[]
# 入队
# l.append('first')
# l.append('scecond')
# l.append('ehird')
# print(l)
#
# 出队
# print(l.pop(0))
# print(l.pop(0))
# print(l.pop(0)) # 堆栈---先进后出
# 需要掌握的操作
# l=['aaa','bbb',345]
# l.clear()
# l.append([1,2,3])
#
# for i in [1,2,3]:
# l.append(i)
# l.extend([1,2,3])
#
#
# l.reverse()
# 只有在类中索引元素都是同种类型的情况下才能使用sort排序
# l=[1,3,2]
# l.sort(reverse=True)
#
# l=['a','e','f','d']
# l.sort()
# print(l)
# ======================================该类型总结====================================
# 存多个值 # 有序 # 可变
												

Python编程Day5——可变与不可变类型、数据类型整合的更多相关文章

  1. Python编程笔记二进制、字符编码、数据类型

    Python编程笔记二进制.字符编码.数据类型 一.二进制 bin() 在python中可以用bin()内置函数获取一个十进制的数的二进制 计算机容量单位 8bit = 1 bytes 字节,最小的存 ...

  2. Python 编程入门(1):基本数据类型

    以下所有例子都基于最新版本的 Python,为了便于消化,每一篇都尽量短小精悍,希望你能尽力去掌握 Python 编程的「概念」,可以的话去动手试一下这些例子(就算目前还没完全搞懂),加深理解. 程序 ...

  3. Python 编程入门(2):复杂数据类型(列表,字典)

    以下所有例子都基于最新版本的 Python,为了便于消化,每一篇都尽量短小精悍,希望你能尽力去掌握 Python 编程的「概念」,可以的话去动手试一下这些例子(就算目前还没完全搞懂),加深理解. 在 ...

  4. python基础之pip、.pyc、三元运算、进制、一切皆对象、可变与不可变类型

    一.pip(下载工具==yum) 1.重点(必须掌握的) 列出已安装的包 pip list 安装要安装的包 pip install xxx 安装特定版本 pip install django==1.1 ...

  5. Python可变与不可变类型及垃圾回收机制

    1. 可变与不可变类型 1.1  可变类型 在id不变的情况下,value可以改变,则称之为可变类型.列表.字典与集合是可变的. l1 = [,,,,] print(id(l1)) l1[] = #改 ...

  6. Python中的可变、不可变对象和赋值技巧序列解包

    可变对象和不可变对象 在python中一切皆对象.在Python中不存在所谓的值传递调用,一切传递都是对象的引用,也可认为是传址. python中,对象分为可变(mutable)和不可变(immuta ...

  7. python引用在函数传参时的体现以及可变与不可变对象的对比

    今天偶然看到 vamei 老师的博客 http://www.cnblogs.com/vamei/archive/2012/07/10/2582795.html 讲的是python动态类型以及引用的事儿 ...

  8. python中的可变与不可变对象

    Python中的可变对象和不可变对象 什么是可变/不可变对象 不可变对象,该对象所指向的内存中的值不能被改变.当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一 ...

  9. python的可变与不可变数据类型

    <python的可变与不可变数据类型>     python与C/C++不一样,它的变量使用有自己的特点,当初学python的时候,一定要记住“一切皆为对象,一切皆为对象的引用”这句话,其 ...

随机推荐

  1. 行盒(line box)垂直方向的属性详解:从font-size、line-height到vertical-align

    视觉格式化模型 在一个文档中,每个元素都被表示为0.1或多个矩形的盒子.确定这些盒子的尺寸, 属性 --- 像它的颜色,背景,边框方面 --- 和位置是渲染引擎的目标.① 在CSS中,使用标准盒模型描 ...

  2. scrum与第一次teamwork

    一.关于Scrum Scrum是什么?是迭代式增量软件开发过程,通常用于敏捷软件开发,Scrum是一种偏重于过程的敏捷开发的具体方式.Scrum的英文意思是橄榄球运动的一个专业术语,表示“争球”的动作 ...

  3. Vue 获取登录用户名

    本来是打算登录的时候把用户名传过去,试了几次都没成功,然后改成用cookie保存用户名,然后在读取就行了, 登录时候设置cookie setCookie(c_name,c_pwd,exdays) { ...

  4. Python 打印矩形、直角三角形、等腰三角形、菱形

    # 1)打印一个星号 print('*') #2)打印一行6个星号 * * * * * * for i in range(6): print('*',end=' ') #3)打印6列星号 * * * ...

  5. 学习Acegi应用到实际项目中(6)

    在企业应用中,用户的用户名.密码和角色等信息一般存放在RDBMS(关系数据库)中.前面几节我们采用的是InMemoryDaoImpl,即基于内存的存放方式.这节我们将采用RDBMS存储用户信息. Us ...

  6. 3.11formdata的使用

    var formData = new FormData(); formData.append('files[]',document.getElementById("file").f ...

  7. PowerShell工作流学习-6-向脚本工作流添加检查点

    关键点: a)检查点是工作流当前状态的快照,其中包括变量的当前值以及在该点生成的任何输出,这些信息保存在磁盘. b)检查点数据保存在托管工作流会话的计算机的硬盘上的用户配置文件中. c)当工作流通用参 ...

  8. java中的抽象类的作用

    抽象函数的作用有很多,我就举一个例子,(mars老师的例子): 打印机: 父类---Printer 子类---HBPrinter 子类----CanonPrinter 测试类----Test //定义 ...

  9. 从git远程仓库Checkout项目到本地

    一.登录coding  并且项目已创建好  已经是项目的组员 二.打开idea 1.弹出如下页面  复制远程项目上的SSH(URL)到下框URL 并且Test测试 成功就Clone即可 2.Clone ...

  10. 2.Spring 拦截器应用

    首先咱们来了解一下具体的业务场景(这个跟第一篇中的很相似但有不同):具体的业务是这样的,现在系统中有六十多个主档(功能模块),每个主档都有新增.修改.删除功能,当我们在对每个主档做这些操作时需要对其记 ...