1.可变类型:值改变,但是id不变,证明就是改变原值,是可变类型

2.不可变类型:值改变,但是id也跟着改变,证明是产生新的值,是不可变类型

数字类型

一、整型int

1、用途:记录年龄、等级、数量

2、定义方式

age = 18

数据类型转换:只能将纯数字的字符串转成int

二、浮点型float

1、用途:记录身高、薪资、体重

2、定义方式

salary = 10.1

数据类型转换:只能将包含小数的字符串转成float

x =float('3.1')

x=3.1

print(id(x))

x=4.3

print(id(x))

三、字符串类型

1、用途:记录描述性质的状态

2、定义方式:在单引号、双引号、三引号内包含一串字符串
msg='hello'

数据类型转换

res=str([1,2,3])

print(res,type(res))

3、常用操作+内置方法

优先掌握操作:

3.1按索引取值(正向取+反向取):只能取

msg='hello'
print(msg[0],type(msg[0]))   正取
print(msg[-1])  反取

msg[0]='H' #只能取

3.2切片(顾头不顾尾,步长)

msg='hello world'

res=mes[0:3:1]

print(res)==>hel   正切

msg='hello world'

res=msg[-1:-12:-1]

res=msg[-1::-1]

res=msg[::-1]

print(res) ==>dlrow  反取

3.3长度len

msg=‘hello world’

print(len(msg))==>11

3.4成员运算in和not in

判断一个字符串是否存在于大字符串中

msg='kevin is dsb'

print('kevin' in msg)

print('dab' in msg)

print('aaa' not in msg)

print(not 'aaa' in msg)

3.5移除空白

用来去除字符串左右两边的字符,不指定默认去除的是空格

msg='    hello '

res=msg.strip()

pirint(res,id(res))

print(msg.id(msg))

print('************eg**on***********'.strip('*'))

用户名密码认证去除空格

name = input('username==>:').strip()

pwd = input('password==>:'),strip()

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

info = ‘egon:18:male’

res= info.split(':')

print(res,type(res))

print(res[0],res[1])

cmd ='get|a.txt|33333'

print(cmd.split('|',1))

用:号作连接符号将纯字符串的列表拼接成一个字符串

l=['egon','18','male']

res = ':'.join(1)

print(res)==>egon:18:male

3.7循环

for item in 'hello'

  print(item)

需要掌握的操作

1、strip,lstrip,rstrip

print('***********egon**********'.strip('*'))==>egon

print('***********egon**********'.lstrip('*'))==>egon**********

print('***********egon**********'.rstrip('*'))==>***********egon

2、lower,upper

print('Abc123'.lower())==>abc123

print('Abc123'.upper())==>ABC123

3、startswitch,endswitch

startswitch()方法用于检查字符串是否是以指定子字符串开头

endswith() 方法用于判断字符串是否以指定后缀结尾

msg='alex is dsb'

print(msg.startswith('alex'))==>True

print(msg.endswith('b'))==>True

4、format的三种玩法

res='my name is %s my age is %s' %('egon',18)

print(res)==>my name is egon my age is 18

res='my name is {name} my age is {age}'.format(age=18,name'egon')

print(res)==>my name is egon my age is 18

5、split,rsplit

msg='a:b:c:d'

print(msg.split(':',1))==>['a', 'b:c:d']

print(msg.rsplit(':',-1))==>['a:b:c', 'd']

6、replace

replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。

msg='kevin is kevin is hahahah'

res=msg.replace('kevin','sb',1)

print(res)==>sb is kevin is hahahah

7、isdigit

如果字符串是由纯数字组成的,则返回True

print('12345'.isdigit())==>True

成绩验证必须输入数字

score=input('>>>>:').strip()

if score.isdigit():

总结:字符串只能存一个值

   字符串是有序的

   字符串是不可变类型

四、列表类型list

1.。用途:按照位置记录多个值,索引对应值

2.定义方式:在[]内用逗号分隔开多个任意类型的值

数据类型转换:凡是能够用for循环遍历的数据类型都可以list,被其转换成列表

res=list({'a':1,'b':2,'c':3})

print(res)==>['a', 'b', 'c']

3、常用操作+内置方法

有先掌握的操作:

3.1按照索引取值(正向反向存取):即可存也可取

l=['a','b','c','d','e']

print(l[0])

print(l[-1])

print(id(l))

1[0]='A'

print(id(1))

强调:对于不存在的索引会报错

l[5]='AAAA'

dic={"k1":111}

dic['k2']=2222

print(dic)==>{'k1': 111, 'k2': 2222}

3.2切片(顾头不顾尾,步长)

l=['a','b','c','d','e']

print(l[1:4])==>['b', 'c', 'd']

print(1:[::-1])==>['e', 'd', 'c', 'b', 'a']

3.3长度

l=['a','b','c','d','e']

print(len(l))==>5

3.4成员运算in和not in

l=['a','b','c','d','e']

print('a' in l)

3.5追加与insert

insert() 函数用于将指定对象插入列表的指定位置

l=['a','b','c','d','e']

l.append('xxx')

l.append('yyy')

print(l)==>['a', 'b', 'c', 'd', 'e', 'xxx', 'yyy']

l.insert(0,'xxxx')

print(l)==>l=['xxxx','a','b','c','d','e']

3.6删除

l=['a','bbb','c','d','e']

del是一种通用的删除操作,没有返回值

del l[0]

print()==>['bbb', 'c', 'd', 'e']

dic={'k1':1}

del dic['k1']

print(dic)==>{}

remove(指定要删除的元素),没有返回值

pop(指定要删除的那个元素的索引),返回刚刚删掉的那个元素

l=['a','bbb','c','d','e']

l.pop(-1)

res=l.pop(1)

print(1)==>['a', 'c', 'd']

print(res)==>bbb

3.7循环

l=['a','b','c','d','e']

for item in l:

  print(item)

==>

a
b
c
d
e

l =['aaa','bb',345]

l.clear()

l,append([1,2,3])

for i in [1,2,3]:

  l.append(i)

l.extend([1,2,3])

l.extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

l.reverse() 函数用于反向列表中元素。

l.sort() 用于对原列表进行排序,只有在类中所有元素都是同种类型的情况下才能用sort排序

总结:列表可以存多个值

   列表是有序的

   列表是可变类型

Day 05 可变不可变、数据类型内置方法的更多相关文章

  1. python-字典数据类型内置方法

    字典数据类型内置方法(必考) 用途:存多个值,不通过索引取值,可以用关键字找到对应得值 定义方式:{}内以key:value的方式存储多个值,值与值之间用逗号隔开 lis = ['ruixing', ...

  2. python中其他数据类型内置方法

    补充字符串数据类型内置方法 1.移除字符串首尾的指定字符可以选择方向1: s1 = '$$$jason$$$' print(s1.strip('$')) # jason print(s1.lstrip ...

  3. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  4. python循环与基本数据类型内置方法

    今天又是充满希望的一天呢 一.python循环 1.wuile与else连用 当while没有被关键'break'主动结束的情况下 正常结束循环体代码之后会执行else的子代码 "" ...

  5. while.for循环和基本数据类型内置方法

    while循环补充说明 流程控制之for循环 基本数据类型内置方法 内容详细 1.死循环 真正的死循环是一旦执行,Cpu的功耗会急速上升 知道系统采取紧急措施 所以 尽量不要让cpu长时间不断运算. ...

  6. python数据类型内置方法 字符串和列表

    1.字符串 内置方法操作# a = 'qqssf'#1. print(a[-1:]) #按索引取,正向从0开始,反向从-1开始# print(len(a)) #取长度# a = 'qqssf'# 2. ...

  7. python数据类型内置方法

    内容概要 列表内置方法 字典内置方法 字符串转换成字典的方法 eval() 元组内置方法 元组相关笔试题 集合内置方法 列表内置方法 l1 = [2, 4, 5, 7, 3, 9, 0, 6] # 升 ...

  8. 【python基础】第11回 数据类型内置方法 02

    本章内容概要 列表内置方法 字典内置方法 元组内置方法 集合内置方法 可变类型与不可变类型 本章内容详细 1.列表内置方法 list 列表在调用内置方法之后不会产生新的值 1.1 统计列表中的数据值的 ...

  9. Python-集合数据类型内置方法

    集合内置方法(必考) 用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序. 定义方式:{}内用逗号隔开多个元素,元素只能是不可变 ...

随机推荐

  1. Windows 下通过DOS命令获取指定文件夹下所有文件的全路径

    1.在你要获取路径的文件夹下 新建文本文档 (.txt) 文件, 2.输入以下内容保存 DIR *.* /S/B >LIST.TXT /s 表示递归 3. 将文件后缀改成 .bat 4.双击运行 ...

  2. Session 和 Cookie的区别

    2019-03-26 18:16:47 一.区别概论 Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群.数据库.文件中:Cookie是客户端保存用户信息的一种机制 ...

  3. Behavior Question - Most challenging project.

    介绍项目,challenging的地方 The most challenging project I have ever done was an online collaborative coding ...

  4. js判断类型的四种方法

    typeof:使用typeof可以很方便的判断六种类型:undefined.boolean.string.number.object.function 数组和null会被判断为object类型 ins ...

  5. python学习(五)

  6. mysql数据库的基础操作

    注 : 本文中注释因为方便写了# ,mysql中规范应为 -- 创建用户 通过root管理员权限可以创建各种用户,并为他们分配权限及可以操作的数据库. 语法:create user '用户名'@'ip ...

  7. Spring Developer Tools 源码分析:二、类路径监控

    在 Spring Developer Tools 源码分析一中介绍了 devtools 提供的文件监控实现,在第二部分中,我们将会使用第一部分提供的目录监控功能,实现对开发环境中 classpath ...

  8. Aop理解 ioc理解

    AOP 把 [核心代码]和[非核心代码]分离 提高开发的效率 java设计模式: https://www.cnblogs.com/malihe/p/6891920.html N+1就是: 1:一条查询 ...

  9. SqlServer查找字段中带空值的项

    select * from  lianxia where sex is null

  10. python笔记14-三元运算符

    a = 1b = 2#下面这个c = a if a>1 else b #和下面是一样的效果if a > 1: c = aelse: c = b #打印偶数s=[]nums = list(r ...