python数据类型及其操作

一、数字

常用类型:int,float

age = 10  # int型

salary = 3000.5  # float型

进制:

二进制:

11 = 1*21 + 1*20 = 3

八进制:

11 = 1*81 + 1*80 = 9

十进制:

11 = 1*101 + 1*100 = 11

十六进制:

11 = 1*161 + 1*160 = 17

进制转换:

十进制转为二进制:

age = 10

print(bin(age)) => 0b1010

二进制转为十进制:

1010 = 1*23 + 0*22 + 1*21 + 0*20 = 10

十进制转为八进制:

print(oct(age)) => 0o12

十进制转为十六进制:

print(hex(age)) => 0xa

二、字符串

创建字符串:

>>> name = ‘johnny‘   # name = str(‘johnny‘)
>>> print(type(name))str
>>> print(name[0])j

基本操作:

移除空白

>>> name = input(‘username:‘)
>>> print(name)
username:      johnny
      johnny   >>> name = name.strip()>>> print(name)username:      johnnyjohnny或>>> name = input(‘username‘).strip()>>> print(name)     

>>> name = ‘***johnny*****‘>>> print(name.strip(‘*‘))johnny >>> print(name.lstrip(‘*‘))johnny*****>>> print(name.rstrip(‘*‘))***johnny

切分

>>> user_info = ‘root:x:0:0::/root:/bin/bash‘

>>> print(user_info.split(‘:‘))

[‘root‘,‘x‘,‘0‘,‘0‘,‘‘,‘/root‘,‘/bin/bash‘]

>>> print(user_info.split(‘:‘)[5])

/root>>> msg = ‘name   johnny age 10‘ >>> print(msg.split())[‘name‘,‘johnny‘,‘age‘,‘10‘]

统计长度

>>> name = ‘johnny‘

>>> print(len(name))  #相当于 name.__len__()

6

切片

>>> name = ‘hello world‘

>>> print(name[1:3])

el

>>> print(name[1])

e

>>> print(name[1:9:2])

el o

其它操作

#startswith,endwith

>>> name = ‘johhny_dd‘

>>> print(name.endswith(‘dd‘))

True

>>> print(name.startswith(‘j‘))

True

#replace

>>> name = ‘ Today is a good day,choose you like‘

>>> print(name.replace(‘Today‘,‘Tomorrow‘))

Tomorrow is a good day,choose you like

#format

>>> print(‘{} {} {}‘.format(‘johnny‘,18,‘male‘))

johnny 18 male

>>> print(‘{0} {1} {0}‘.format(‘johnny‘,18,‘male‘))

johnny 18 johnny

>>> print(‘{name} {age} {sex}‘.format(name=‘johnny‘,age=18,sex=‘male‘))

johnny 18 male
>>> print(‘NAME:{name} AGE:{age} SEX:{sex}‘.format(name=‘johnny‘,age=18,sex=‘male‘))
NAME:johnny AGE:18 SEX:male

#isdigit

>>> num = ‘123‘

>>> print(num.isdigit())

True

who_age = 10

whileTrue:

    age = input(‘>>:‘).strip()

    if len(age) == 0:continue

    if age.isdigit():

        age = int(age)

        print(age,type(age))


#find,index,count

>>> name = ‘johnny‘

>>> print(name.find(‘o‘))

1

 >>> print(name.find(‘x‘))

-1

 >>> print(name.index(‘o‘))

1

>>> print(name.find(‘x‘))

报错

>>> name = ‘johnny hello‘

>>> print(name.find(‘o‘,2,4))

-1

 >>> print(name.count(‘o‘))

2

 >>> print(name.count(‘o‘,0,3))

1

#join  都必须是字符串

>>> l = [‘johnny‘,‘say‘,‘hello‘,‘world‘]

>>> print(‘:‘.join(l))

johnny:say:hello:world

>>> l1 = [‘johnny‘,11]

>>> print(‘;‘,join(l1))

报错

#center,ljust,rjust,zfill

>>> name = ‘johnny‘

>>> print(name.center(30,‘*‘))

************johnny************

>>> print(name.ljust(30,‘*‘))

johnny************************

>>> print(name.rjust(30,‘*‘))

************************johnny

>>> print(name.zfill(30))

000000000000000johnny

#lower,upper

>>> name = ‘JOHNNY‘

>>> print(name.lower())

johnny

>>> name = ‘johnny‘

>>> print(name.upper())

JOHNNY

#capitalize,title

>>> msg = ‘johnny say ji‘

>>> print(msg.capitalize())

Johnny say hi

>>> print(msg.title)

>>> Johnny Say Hi

#isalnum,isalpha

>>> name = ‘johnny123‘

>>> print(name.isalnum())

True

>>> print(name.isalpha())

False

#in>>> msg = ‘my name is johnny‘>>> print(‘johnny‘ in msg)

>>> msg = ‘hello‘>>> a,b,c,d,e = msg>>> print(a,b,c,d,e)h e l l o

三、列表

创建列表:

name = [‘unknown‘,‘working‘,‘safe‘]

name = list([‘unknown‘,‘working‘,‘safe‘])

基本操作:

索引

>>> name = [‘unknown‘,‘working‘,‘safe‘,4,6,1]

>>> print(name[1])

working

切片

>>> print(name[1:3])

[‘working‘,‘safe‘]

追加,一次只能追加一个值

>>> name.append(‘hobby‘)

>>> print(name)

[‘unknown‘,‘working‘,‘safe‘,4,6,1,‘hobby‘]

插入

>>> name = [‘ruwee‘,‘johnny‘,‘ruwee‘,‘nihao‘,‘hello‘,‘world‘]

>>> name.insert(2,‘mo‘)

>>> print(name)

[‘ruwee‘,‘johnny‘,‘mo‘,‘ruwee‘,‘nihao‘,‘hello‘,‘world‘]

删除 pop

>>> name.pop()      #默认从后面删除,按照索引进行删除

[‘unknown‘,‘working‘,‘safe‘,4,6,1]

>>> name.pop(0)

[‘working‘,‘safe‘,4,6,1,‘hobby‘]

删除 remove  按照值进行删除

>>> name.remove(‘working‘)

[‘safe‘,4,6,1,‘hobby‘]

长度

>>> name = [‘unknown‘,‘working‘,‘safe‘]

>>> print(len(name))

3

包含

>>> print(‘unknown‘ in name)

True

其它操作

>>> my_friends = [‘ruwee‘,‘johnny‘,‘ruwee‘,‘nihao‘,‘hello‘,‘world‘]

>>> my_friends.clear()  #清空所有

>>> l = my_friends.copy()

>>> print(l)

[‘ruwee‘,‘johnny‘,‘ruwee‘,‘nihao‘,‘hello‘,‘world‘]

>>> print(my_friends.count(‘ruwee‘))

2

>>> print(my_friends.extend([‘how‘,‘are‘,‘you‘]))      #一次性添加多个值

[‘ruwee‘,‘johnny‘,‘ruwee‘,‘nihao‘,‘hello‘,‘world‘,‘how‘,‘are‘,‘you‘]

>>> print(my_friends.index(‘how‘))

6

>>> print(my_friends.reverse())

[‘you‘,‘are‘,‘how‘,‘world‘,‘hello‘,‘nihao‘,‘ruwee‘,‘johnny‘,‘ruwee‘]

>>> l = [4,6,1,-1]

>>> l.sort()

>>> print(l)

[-1,1,4,6]

>>> data = [‘johnny‘,22,[23,1,2]]>>> name,age,birth = data>>> print(name)‘johnny‘>>> print(age)22>>> print(birth)[23,1,2]

四、字典

创建字典:

person = {‘tom‘:12,‘jerry‘:15,‘peter‘:20}

person = dict({‘tom‘:‘12‘,‘jerry‘:‘15‘,‘peter‘:‘20‘})

基本操作:

索引

>>> print(person[‘tom‘])

12

新增

>>> person[‘height‘] = 1.8

>>> print(person)

{‘tom‘:12,‘jerry‘:15,‘peter‘:20,‘height‘:1.8}

>>> dic = {‘a‘:1,‘b‘:2}

>>> person.update(dic)

>>> print(person)

{‘tom‘:12,‘jerry‘:15,‘peter‘:20,‘height‘:1.8,‘a‘:1,‘b‘:2}

删除

>>> person.pop(‘tom‘)

>>> print(person)

{‘jerry‘:15,‘peter‘:20,‘height‘:1.8}

>>> print(person.pop(‘sdfdsff‘,None))

None

获取值

>>> person = {‘tom‘:12,‘jerry‘:15,‘peter‘:20}

>>> print(person.get(‘tom‘))

12

>>> print(person.get(‘sdf‘))

None

>>> print(person[‘dsf‘])

报错

键值对

>>> print(person.keys())

dict_keys([‘tom‘,‘jerry‘,‘peter‘])

>>> print(person.values())

dict_values([12,15,20])

>>> print(person.items())

dict_items([(‘tom‘,12),(‘jerry‘,15),(‘peter‘,20)])

循环

for key,value in person.items():

    print(key,value)

五、集合

集合内可以有多个元素,但是每个元素都必须是不可变类型

集合内的元素唯一

集合是无序的

创建集合:

>>> s = {3,4,7,1}

>>>set__test = set(‘world‘)

>>>print(set_test)

{‘w‘,‘d‘,‘l‘,‘o‘,‘r‘}

>>> s1 = set(‘hello‘)

>>> print(s1)

{‘o‘,‘e‘,‘l‘,‘h‘}

基本操作:

in , not in

>>> pythons = {‘hello‘,‘how‘,‘are‘,‘you‘,‘fine‘,‘thank‘}

>>> print(‘hello‘ in pythons)

True

| 并集

>>> s1={1,10,11,22}

>>> s2 = {1,11,33}

>>> print(s1 | s2)

{1,33,10,11,22}

& 交集

>>> s1={1,10,11,22}

>>> s2 = {1,11,33}

>>> print(s1&s2)

{1,11}

- 差集

>>> s1={1,10,11,22}

>>> s2 = {1,11,33}

>>> print(s1 - s2)

{10,22}

^ 对称差集

>>> s1={1,10,11,22}

>>> s2 = {1,11,33}

>>> print(s1 ^ s2)

{33,22,10}

父集

>>> s1 = {1,2,3,4}

>>> s2 = {1,2}

>>> print(s1 >= s2)

True

子集

>>> print(s1 <= s2)

False

其它操作

>>> s = set([3,5,9,10])

>>> t = set(‘Hello‘)

>>> t.add(‘x‘)

>>> s.update([10,37,42])

>>> t.remove(‘H‘)

>>> len(s)

六、元祖

元组不可变,主要用来读

创建元祖:

age = (32,12,54,25)

age = tuple((32,12,54,25))

基本操作:

索引

>>> age = (32,12,54,25)

>>> print(age[2])

54

切片

>>> print(age[0:3])

(32,12,54)

长度

>>> print(len(age))

4

包含

>>> print(12 in age)

True

其它操作

>>> printt(age.index(25))

3

>>> print(age.count(32))

1

七、文件处理

流程:

1.打开文件,得到句柄并且赋给一个变量

2.通过句柄进行文件操作

3.关闭文件

基本操作:

读取文件

f = open(‘a.txt‘,‘r‘,encoding=‘utf-8‘)

res = f.read()

print(res)

print(f.readline())

f.close()

with方式打开的文件在操作结束后可以自动关闭文件

with open(‘a.txt‘,‘r‘,encoding=‘utf-8‘) as f:

    pass

写入文件

f=open(‘a.txt‘,‘w‘,encoding=‘utf-8‘)
f.write(‘11111\n‘)
f.writelines([‘a\n‘,‘b\n‘,‘c\n‘])
f.close()

替换文本中的内容

import os
with open(‘old.txt‘,‘r‘,encoding=‘utf-8‘) as read_f,    open(‘.old.txt.swap‘,‘w‘,encoding=‘utf-8‘) as write_f:
    for line in read_f:
        if ‘SB‘ in line:
            line=line.replace(‘SB‘,‘alex‘)
        write_f.write(line)
os.remove(‘old.txt‘)
os.rename(‘.old.txt.swap‘,‘old.txt‘)
时间: 2025-01-16 11:03:37

python数据类型及其操作的相关文章

Python数据类型的操作

一.数字(Number) 1.数学函数: 函数 返回值 ( 描述 ) abs(x) 返回数字的绝对值,如abs(-10) 返回 10 ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5 cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. Python 3 已废弃 .使用 使用 (x>y)-(x<y) 替换. exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.71828182

python数据类型及相关操作

python数据类型详解 目录1.字符串2.布尔类型3.整数4.浮点数5.数字6.列表7.元组8.字典9.日期 1.字符串1.1.如何在Python中使用字符串a.使用单引号(')用单引号括起来表示字符串,例如:str='this is string';print str; b.使用双引号(")双引号中的字符串与单引号中的字符串用法完全相同,例如:str="this is string";print str; c.使用三引号(''')利用三引号,表示多行的字符串,可以在三引号

Python字典增删操作技巧简述

Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些基础应用.比如今天我们为大家介绍的Python字典的相关操作,就是我们在学习过程中需要熟练掌握的技巧. Python字典(Dictionary)是一种映射结构的数据类型,由无序的“键-值对”组成.字典的键必须是不可改变的类型,如:字符串,数字,tuple:值可以为任何Python数据类型. 1.新建Python字典 >>> dict = {} #新建一个空字典 >>>

python数据类型整理

Python中常见的数据结构可以统称为容器(container).序列(如列表和元组).映射(如字典)以及集合(set)是三类主要的容器. 一.序列(列表.元组和字符串) 序列中的每个元素都有自己的编号.Python中有6种内建的序列.其中列表和元组是最常见的类型.其他包括字符串.Unicode字符串.buffer对象和xrange对象.下面重点介绍下列表.元组和字符串. 1.列表 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能. (1).创

使用python对redis操作

写在前面 首先声明,这是为了学习python对redis操作而写的一个小demo,包括了这几天网站找到的一些资料,综合总结出来一些东西,最后附上我写的一个用python操作redis的一个demo: 模块安装 python提供了一个模块redis-py来使我们很方便的操作redis数据库,安装该模块也很简单,直接使用pip安装就行,命令如下: pip install redis 安装完之后,使用import调用一下就能知道是否安装成功,在python界面下输入import redis,如果不报错

Python数据类型-list

Python-List详解 列表(list)作为python的一种数据类型,常用它进行一些复合数据的分组,list的形式是[value1,value2,value3,value4....valuen],list的每项数据不需要是同一类型,可以是任意的python数据类型. >>> l1 = [1,2,3,'name',[1,2,3],{'age':18},(1,2,3)] >>> l1 [1, 2, 3, 'name', [1, 2, 3], {'age': 18},

day01-day04总结- Python 数据类型及其用法

Python 数据类型及其用法: 本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点型以及布尔类型.这些基本数据类型组成了基本控制块,从而创建我们的Python应用程序. 字符串 字符串(String) 是一段文本字符,通常以某种形式向用户输出.如果我们打开Python的解释器,我们试着最常见的输出"Hello World!"应用: >>> print

转 python数据类型详解

python数据类型详解 目录 1.字符串 2.布尔类型 3.整数 4.浮点数 5.数字 6.列表 7.元组 8.字典 9.日期 1.字符串 1.1.如何在Python中使用字符串 a.使用单引号(') 用单引号括起来表示字符串,例如: str='this is string'; print str; b.使用双引号(") 双引号中的字符串与单引号中的字符串用法完全相同,例如: str="this is string"; print str; c.使用三引号(''') 利用三

python图像数组操作与灰度变换

Python图像数组操作与灰度变换 使用python以及numpy通过直接操作图像数组完成一系列基本的图像处理 numpy简介: NumPy是一个非常有名的 Python 科学计算工具包,其中包含了大量有用的工具,比如数组对象(用来表示向量.矩阵.图像等)以及线性代数函数. 数组对象可以实现数组中重要的操作,比如矩阵乘积.转置.解方程系统.向量乘积和归一化.这为图像变形.对变化进行建模.图像分类.图像聚类等提供了基础. 在上一篇python基本图像操作中,当载入图像时,通过调用 array()