[ Python ] 基本数据类型及属性(上篇)

1. 基本数据类型

(1) 数字 - int
        (2) 字符串 - str
        (3) 布尔值 - bool

2. int 类型中重要的方法

  (1) int
        将字符串转换为数字类型:
    
    # 将字节为数字的字符串转换为 int 类型

# 将字节为数字的字符串转换为 int 类型
a = ‘123‘
b = int(a)
print(type(a), a)
print(type(b), b)

# 用 十六进制的方式将 num 转换为十进制
num = ‘0011‘
v = int(num, base=16)
print(v)

3. 字符串主要的方法

  

 实例详细介绍:

  (1) capitalize()
        首字母大写

test = ‘hkey‘
v = test.capitalize()
print(v)

# 执行结果:
Hkey

(2) lower() casefold()
    将字符串大写字母变小写,casefold() 可将其他国家的一些字母变小写

test = ‘HkEy‘
v1 = test.casefold()
v2 = test.lower()
print(v1, v2)

# 执行结果:
hkey hkey

(3) center()
    设置宽度,并将内容居中, 20 代指总长度; *  代指空白填充

name = ‘hkey‘

v3 = name.center(20,‘#‘)
print(v3)

# 执行结果:
########hkey########

(4) count()
    在字符串中寻找子序列出现的个数

name = ‘hkeyxiaoxiao‘

v = name.count(‘x‘)
print(v)

# 执行结果:
2

# 可设置起始位置和结束位置

name = ‘hkeyxiaoxiao‘
v1 = name.count(‘x‘, 0, 8)
print(v1)

# 直接结果:
1

(5) startswith() endswith()
  startswith():已什么序列开头,结果为布尔值
  endswith(): 以什么序列结尾,结果为布尔值

name = ‘hkey‘

v = name.startswith(‘h‘)
print(v)

# 执行结果:
True

v1 = name.endswith(‘y‘)
print(v1)

# 执行结果:
True

(6) find() rfind()
    从开始往后找,找到第一个,获取其索引, 结果为: -1  表示没找到

name = ‘hkeykey‘

# 从开始找第一个匹配的序列,并打印序列起始的索引位置
v1 = name.find(‘key‘)
print(v1)

# 执行结果:
1

# (sub, start=None, end=None) start:起始位置 end: 结束位置
v2 = name.find(‘key‘, 0, 3)
print(v2)

# 执行结果:
-1

name = ‘khkeykey‘
# 从右到左查找字符索引位置
print(name.rfind(‘y‘))

# 执行结果:
# 7

(7) format() format_map()
    format() 格式化,将一个字符串中指定的占位符替换为值,占位符用 {} 表示format_map() 格式化,通过字典的形式将值传给对应 key 的占位符

# 格式化,将一个字符串中指定的占位符替换为值
test = ‘i am {name}, age {a}‘
print(test)
# 执行结果:
i am {name}, age {a}

v = test.format(name=‘hkey‘, a=20)
print(v)
# 执行结果:
i am hkey, age 

# 可使用索引直接指定占位符
test = ‘i am {0}, age {1}‘
print(test)

# 执行结果:
i am {0}, age {1}

v = test.format(‘hkey‘, 20)
print(v)

# 执行结果:
i am hkey, age 20

# format_map 通过字典的形式将值传给对应 key 的占位符
test = ‘i am {name}, age {a}‘

v1 = test.format_map({‘name‘: ‘hkey‘, ‘a‘: 20})

print(v1)

# 执行结果:
# i am hkey, age 20

(8) index()
    从开始往后找,找到第一个,获取其索引, 如果没有就报错。

name = ‘hkey‘
v = name.index(‘y‘)
print(v)
# 执行结果:
# 3

v1 = name.index(‘z‘)
print(v1)

# 执行结果:
# Traceback (most recent call last):
#   File "E:/learn_python/day11/s2.py", line 119, in <module>
#     v1 = name.index(‘z‘)
# ValueError: substring not found

(9) isalnum
    字符串中是否只包含 字母和数字

test = ‘abcd+_‘
v = test.isalnum()
print(v)

# 执行结果:
# False

test = ‘abcd‘
v = test.isalnum()
print(v)

# 执行结果:
# True

(10) expandtabs
    如果字符串中含有制表符 ‘ \t ‘ ,则作为制表符来分割字符串。

s = ‘username\temail\tpassword\nhkey\[email protected]\thkeyy‘
v = s.expandtabs(20)
print(v)

# 执行结果:
# username            email               password
# hkey                [email protected]         hkeyy

(11) isalpha()
    判断字符串是否包含数字,包含数字为 False,不包含数字为: True

s = ‘superman‘
v = s.isalpha()
print(v)

# 执行结果:
# True

(12) isdecimal()  isdigit() isnumeric()
    判断字符串是否为数字
    isdigit() 能识别特殊符号的数字写法
    isnumeric() 能够判断中文的数字写法 ‘二’

test = ‘②‘

v1 = test.isdecimal()
v2 = test.isdigit()
print(v1, v2)

# 执行结果:
# False True

test1 = ‘二‘
v1 = test1.isdecimal()
v2 = test1.isdigit()
# 能够判断中文数字的写法
v3 = test1.isnumeric()
print(v1, v2, v3)

# 执行结果:
# False False True

(13) islower()
    判断字符串小写。

test=‘hkey‘
v=test.islower()
print(v)

#执行结果:
#True

(14) isprintable()
    判断字符串中是否含有不可显示的字符,如 \t \n 等

test = ‘abcdefg\t‘
v = test.isprintable()
print(v)

# 执行结果:
# False

(15) isspace()
    判断变量是否全部为空格

test = ‘ ‘
v = test.isspace()
print(v)

# 执行结果:
# True

(16) istitle()  title()
    istitle() 判断是否为首字母都是大写的字符串
    title() 将字符串转换为首字母大写的标题

test = ‘my heart will go on‘

v = test.istitle()
v1 = test.title()
print(v)
print(v1)

# 执行结果:
# False
# My Heart Will Go On

(17) join()
    将字符串中的每个元素按照指定的分隔符进行拼接

test = ‘看不见你的笑我怎么睡得着‘
v = ‘#‘.join(test)
print(v)

# 执行结果:
# 看#不#见#你#的#笑#我#怎#么#睡#得#着

(18) ljust() rjust()
    设置宽度:
        ljust() 字符串放置左边
        rjust() 字符串放置右边

name = ‘hkey‘

v1 = name.ljust(20,‘*‘)
v2 = name.rjust(20, ‘*‘)
print(v1)
print(v2)

# 执行结果:
# hkey****************
# ****************hkey

(19) zfill()
    不能指定字符,只是 0 填充到左边

name = ‘hkey‘
v1 = name.zfill(20)
print(v1)

# 执行结果:
# 0000000000000000hkey

(20) isupper() upper()
    upper() 将小写字符串转换为大写
    isupper() 判断字符串是否为大写

test = ‘my heart will go on‘

v1 = test.isupper()
v2 = test.upper()
print(v1)
print(v2)

# 执行结果:
# False
# MY HEART WILL GO ON

(21) lstrip() rstrip() strip()
    lstrip() 去除字符串首部特殊符号及空格
    rstrip() 去除字符串尾部特殊符号及空格
    strip() 去除字符串首尾及空格

name = ‘\nhkey\n‘

v1 = name.lstrip()
v2 = name.rstrip()
v3 = name.strip()
print(v1)
print(v2)
print(v3)

# 执行结果:
# v1:
# hkey
#
# v2:
#
# hkey
# v3:
# hkey

(22) maketrans()
    translate() maketrans()  将两个一一对应的字符串进行替换
    translate() 替换maketrans中两个字符串

test1 = ‘abcdefg‘
test2 = ‘1234567‘

v = ‘adfasdfzcvdrfhkljwerto‘
m = str.maketrans(test1, test2)
new_m = v.translate(m)
print(new_m)

# 执行结果:
# 1461s46z3v4r6hkljw5rto

(23) partition()  rpartition()  split()  rsplit()
    partition() 将字符串分割为三分,并将分隔符作为独立的元素进行分割
    rpartition() 从右边开始,将字符串分割为三分,并将分隔符作为独立的元素进行分割
    split() 用指定的字符分割字符串,分割后的列表中不包含分割的字符,可执行分割次数
    rsplit() 从右边开始,用指定的字符分割字符串,分割后的列表中不包含分割的字符,可执行分割次数

test = ‘asdfadfsdfxzscv‘

# 将字符串分割为三分,并将分隔符作为独立的元素进行分割
v = test.partition(‘s‘)
print(v)

# 从右边开始,将字符串分割为三分,并将分隔符作为独立的元素进行分割
v1 = test.rpartition(‘s‘)
print(v1)

# 用指定的字符分割字符串,分割后的列表中不包含分割的字符,可执行分割次数
v2 = test.split(‘s‘, 1)
print(v2)
# 从右边开始,用指定的字符分割字符串,分割后的列表中不包含分割的字符,可执行分割次数
v3 = test.rsplit(‘s‘, 1)
print(v3)

# 执行结果:
#
# v:
# (‘a‘, ‘s‘, ‘dfadfsdfxzscv‘)
# v1:
# (‘asdfadfsdfxz‘, ‘s‘, ‘cv‘)
# v2:
# [‘asdfadfsdfxz‘, ‘cv‘]
# v3:
# [‘a‘, ‘dfadfsdfxzscv‘]
# v4:
# [‘asdfadfsdfxz‘, ‘cv‘]

(24) splitlines()
    分割,只能根据:True、False 是否保留换行

test = ‘adfaf\nadfadf\nadfaf\n‘
v = test.splitlines(True)
v1 = test.splitlines(False)
print(v)
print(v1)

# 执行结果:
# v:
# [‘adfaf\n‘, ‘adfadf\n‘, ‘adfaf\n‘]
# v1:
# [‘adfaf‘, ‘adfadf‘, ‘adfaf‘]

(25) startswith()  endswith()
    startswith: 以什么开头
    endswith: 以什么结尾

test = ‘hkey‘

# 以什么开头
v1 = test.startswith(‘h‘)
# 以什么结尾
v2 = test.endswith(‘e‘)
print(v1)
print(v2)

# 执行结果:
# True
# False

(26) swapcase()
    大小写转换

name = ‘HkEy‘
v = name.swapcase()

print(v)

# 执行结果:
# hKeY

(27) isidentifier()
    检测字符串是否是字母开头

test = ‘1a1dsf123‘
print(test.isidentifier())

# 执行结果;
# False

  (28) replace()
  替换字符串

name = ‘hkeykey‘
# 将字符串中的 ‘k‘ 替换为 ‘f‘ 最多替换1次
print(name.replace(‘k‘, ‘f‘, 1))

# 执行结果:
# hfeykey

总结:

字符串中几个常用的属性:

  join() 、 split() 、 find() 、 strip() 、 upper() 、 lower() 、lower()

4. 常用的字符串操作

(1) 通过索引获取字符

name = ‘hkey‘
print(name[2])

# 执行结果:
# e

(2) 切片

  通过索引的起始值、结束值、步长 来切分字符串

name = ‘hkey‘
v1 = name[0:2]
v2 = name[0:4:2]
print(v1)
print(v2)

# 执行结果:
# v1:
# hk
# v2:
# he

(3) 获取字符串的长度

name = ‘hkey‘
print(len(name))

# 执行结果:
# 4

5. 操作字符串解析

字符串在内存中一旦创建就无法被修改,如果对字符串进行修改或者拼接,必然会生成一个新的字符串

原文地址:https://www.cnblogs.com/hukey/p/9220457.html

时间: 2024-10-08 16:21:47

[ Python ] 基本数据类型及属性(上篇)的相关文章

python核心数据类型笔记

在这里,首先声明,python核心数据类型在这里就认为是python内置的数据类型 在python中.序列类型包含字符串,列表和元组 字符串: 字符串字面量:将文本引入单引号,双引号,三引号 默认的编码类型是字符编码(8bit) 在python2中,如果要使用unicode编码(16bit),需在定义字符串的引号前面加u 在python中,有文档字符串的概念,所谓文档字符串就是在模块,类或则是函数中的第一条语句是一个字符的话(用引号定义),那么该字符就是文档字符串,可以使用__doc__属性引用

python基本数据类型(二)-python3.0学习笔记

python基本数据类型 序列类型的自带方法 1.列表的常用方法 2.元祖的常用方法 3.字符串的常用方法 1.列表常用的方法 L.append(obj) #在列表末尾添加新的对象 L.clear() #清空列表 L.copy() #复制列表,不是同一个对象,内容相同,有返回值.id不同(内存中的地址不同) L.count(obj) #统计某个元素在列表中出现的次数 L.extend(obj) #用obj扩展原来的列表 L.index(obj) #默认值返回这个元素最先出现的索引位置:需要出现下

Python之路番外:PYTHON基本数据类型和小知识点

Python之路番外:PYTHON基本数据类型和小知识点 一.基础小知识点 1.如果一行代码过长,可以用续行符 \换行书写 例子 if (signal == "red") and (car == "moving"): car = "stop" else : pass 等同于 if (signal == "red") and (car == "moving"): car = "stop"

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

熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 一.整型 a = 100 a.xxx() class int(object): def bit_length(self): ##如果将某个整数用2进制表示,返回这个2进制所占bit位数. return 0 def conjugate(self, *args, **kwargs): ##共轭复数 @classmethod # known case def from_bytes(cls, bytes, byteorder, *ar

Python之对象的属性

# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之对象的属性 #http://python.jobbole.com/82622/ #对象的属性 class bird(): feather = True class chicken(bird): fly = False def __init__(self,age): self.age = age summer = chicken(2) print(bird.__dict__) print(ch

python 判断数据类型

import types aaa = 0 print type(aaa) if type(aaa) is types.IntType: print "the type of aaa is int" if isinstance(aaa,int): print "the type of aaa is int" bbb = 'hello' print type(bbb) if type(bbb) is types.StringType: print "the t

python的数据类型

Python的数据类型包括以下几种: 1.整数型--int 比如1,2,3,这些我们数学上常用的整数,都是整数 还包括负整数,但是不包括小数 >>>a=8 >>>type(a) <class 'int'> 2.长整数--long 32位系统上是2**31-1,64位系统上是2**63 -1,超出位数,python会转用高精度去计算,可以是无限大的整 版本2.7.11以上,如果整数超出位数的话会自动转为长整数,以前是在整数后面加个小写或者大写的l #py2.7

数据挖掘中基本概念--数据类型的属性与度量

当我们在学习数据挖掘算法或者机器学习算法时,我们都会发现某些算法只能应用于特定的数据类型,所以在学习数据挖掘算法或者机器学习算法前我们需要对数据类型的属性度量有一个很清晰的了解,如果在数据类型这一步就出现问题,不管算法再怎么优异肯定也是白搭!! 2.1.1  属性与度量 本节我们考虑使用何种类型的属性描述数据对象,来处理描述数据的问题.我们首先定义属性,然后考虑属性类型的含义,最后介绍经常遇到的属性类型. 1. 什么是属性 我们先更详细地定义属性. 定义2.1  属性(attribute)是对象

Python复杂数据类型

复杂数据类型有哪些? 各特性是什么? 各使用场景是什么? 列表和元组的区别是什么?为什么会有这两种数据类型? 列表和元组为什么可以存放不能类型的数据? 什么是工厂函数? 字符串     特性:         1.在Python中没有字符类型所以定义字符串可以用双引号或单引号         2.字符串是不可变类型         3.三引号可包含复杂字符串 >>> a=''' ... 1 ... 2 ... 3 ... ''' >>> a '\n1\n2\n3\n'