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. 算法笔记-- 二进制集合枚举子集 && 求子集和 && 求父集和

    枚举子集: 复杂度:O(2^k) )&s); 用sos dp求解子集和以及父集和 子集和: ; i <= k; i--) { ; mask < (<<k); mask+ ...

  2. ionic3使用cnpm可能会出现的问题

    在跑一个ionic3项目的时候发现,新建的页面无法被识别,总是报错 cannot find modules '../pages/login/login.modules' 在排除多种可能性后,确定了是因 ...

  3. React文档(十二)组合vs继承

    React拥有很强大的组合模型,我们建议使用组合来替代继承来重利用组件之间的代码. 在本章节中,我们将讨论一些开发者经常触及继承的问题,并且我们该如何使用组合来解决这些问题. 组合 一些组件事先不知道 ...

  4. PAT 1112 Stucked Keyboard

    1112 Stucked Keyboard (20 分)   On a broken keyboard, some of the keys are always stucked. So when yo ...

  5. zk observer 节点

    zk 集群中有3种节点:leader,follower,observer,其中 observer 节点没有投票权,即它不参与选举和写请求的投票. 比较 Follower 和 Observer 的代码: ...

  6. git(一) 基本操作

    git简介 产生历史 git是目前世界上最先进的分布式版本控制系统. 2005年,Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是git. git的两个特点 版本控制:可以解决多人同时 ...

  7. 【ANT】输入中文格式为乱码

    使用ant编译,打出的日志的格式为乱码,加上下面的指定编码后,输出为中文了. 为方便拷贝,将其贴出来 <jvmarg value="-Dfile.encoding=UTF-8" ...

  8. ThinkPHP5模型操作中的自动时间戳总结

    ThinkPHP5中提供了非常优秀的自动时间戳功能.使用起来非常方便. 但是官网手册中的说明还是不是很详尽,因此整理再次,以方便后续使用时查阅. 一.一般情况下的自动填充create_time,upd ...

  9. linux c使用socket进行http 通信,并接收任意大小的http响应(五)

    http.c data2.c http_url.c http.h data2.h http_url.h主要实现的功能是通过URL结构体来实现HTTP通信,你可以把这三个文件独立出来,作为HTTP通信模 ...

  10. js计算时间差

    <!doctype html> <html lang="en"> <head> <meta http-equiv="Conten ...