数值与字符串类型

Python3 中有六个标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)。

  • 不可变数据(四个):Number(数字)、String(字符串)、Tuple(元组)、Sets(集合);
  • 可变数据(两个):List(列表)、Dictionary(字典)。

一、数字类型

数字类型包括:int(整型)、float(浮点数)、complex(复数)、bool(布尔值)。

注:python2中还有一个长整型,python3已经没有了。

#a=10
#b=10.0
#c=True
#d=1+2j
#print(type(a))
#print(type(b))
#print(type(c))
#print(type(d))

运行结果如下:

<class ‘int‘>
<class ‘float‘>
<class ‘bool‘>
<class ‘complex‘>

二、String 字符串类型:

  在单引号\双引号\三引号内,输入一串字符即构成一个字符串。例如,name=‘张三‘ 这样name这个变量就是字符串类型。单引号,双引号使用起来没有区别,三引号一般用于多行注释。  字符串有很多常用的方法,经常使用的如下:

1、去除空格:
str.strip():删除字符串两边的指定字符,括号的写入指定字符,默认为空格
str.lstrip():删除字符串左边的指定字符,括号的写入指定字符,默认为空格
str.rstrip():删除字符串右边指定字符,默认为空格

‘‘‘
str.strip():删除字符串两边的指定字符,括号的写入指定字符,默认为空格
str.lstrip():删除字符串左边的指定字符,括号的写入指定字符,默认为空格
str.rstrip():删除字符串右边指定字符,默认为空格

‘‘‘
>>> a="    abc    "
>>> b = a.strip()    # b=‘abc‘
>>> b = a.lstrip()       # b = ‘abc     ‘
>>>b = a.rstrip()        #b =  ‘          abc‘

View Cod

2、字符串的连接“+”连接两个字符串,这个方法比较耗费资源,连接两个字符串就要开辟一次内存空间。。如果是n个字符串相连 那么会开辟n-1次内存。str.join() 方法用于指定一个字符连接另外一个字符串。

#“+”
>>> a=‘hello‘
>>> b=‘world‘
>>> print(a+b)
helloworld

#“str.join()”
>>> a=‘H‘
>>> b=‘world‘
>>> c=a.join(b)
>>> c
‘wHoHrHlHd‘

3、字符串的大小写转换

使用str.upper() str.lower()

>>> str1=‘abc‘
>>> str2=‘FGH‘
>>> print(str1.upper())
ABC
>>> print(str2.lower())
fgh


4、format 的三种玩法:

>>> res1=‘{} {} {}‘.format(‘egon‘,18,‘male‘)
>>> res2=‘{1} {0} {1}‘.format(‘egon‘,18,‘male‘)
>>> res3=‘{name} {age}{sex}‘.format(sex=‘male‘,name=‘egon‘,age=18)
>>> res1
‘egon 18 male‘
>>> res2
‘18 egon 18‘
>>> res3
‘egon 18 male‘

5、split 的用法:

默认分隔符为空格。同时也可以指定切片的次数和切片方向。具体可以看下面示例

>>> name=‘root:x:0:0::/root:/bin/bash‘
>>> print(name.split(‘:‘))
[‘root‘, ‘x‘, ‘0‘, ‘0‘, ‘‘, ‘/root‘, ‘/bin/bash‘]

>>> name=‘C:/a/b/c/d.txt‘
>>> print(name.split(‘/‘,1))
[‘C:‘, ‘a/b/c/d.txt‘]

>>> name=‘C:/a/b/c/d.txt‘
>>> print(name.rsplit(‘/‘,1))
[‘C:/a/b/c‘, ‘d.txt‘]

6、replace的用法:

默认是替换全部匹配的地方,可以自己手动指定替换次数。

>>> shuaige=‘Panan:"Panan is the most hansome person in the world."‘
>>> print(shuaige.replace(‘Panan‘,‘Dashu‘,1))
Dashu:"Panan is the most hansome person in the world."

>>> print(shuaige.replace(‘Panan‘,‘Dashu‘,))
Dashu:"Dashu is the most hansome person in the world."

7、isdigit的用法:

age=input(‘>>: ‘)
print(age.isdigit())

8.其他方法:

#1、find,rfind,index,rindex,count
#2、center,ljust,rjust,zfill
#3、expandtabs
#4、captalize,swapcase,title
#5、is数字系列
#6、is其他 

#find,rfind,index,rindex,count
name=‘egon say hello‘
print(name.find(‘o‘,1,3)) #顾头不顾尾,找不到则返回-1不会报错,找到了则显示索引
# print(name.index(‘e‘,2,4)) #同上,但是找不到会报错
print(name.count(‘e‘,1,3)) #顾头不顾尾,如果不指定范围则查找所有

#center,ljust,rjust,zfill
name=‘hello‘
print(name.center(30,‘-‘))
#------------hello-------------
print(name.ljust(30,‘*‘))
#hello*************************
print(name.rjust(30,‘*‘))      #*************************hello
print(name.zfill(10)) #用0填充
#00000hello

#expandtabs
#默认‘\t’等于八个空格,参数可以自己指定个数
name=‘egon\thello‘
print(name)
print(name.expandtabs(1))

#captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase()) #大小写翻转
msg=‘egon say hi‘
print(msg.title()) #每个单词的首字母大写

#is数字系列
#在python3中
num1=b‘4‘ #bytes
num2=u‘4‘ #unicode,python3中无需加u就是unicode
num3=‘四‘ #中文数字
num4=‘Ⅳ‘ #罗马数字
#在python3中
num1=b‘4‘ #bytes
num2=u‘4‘ #unicode,python3中无需加u就是unicode
num3=‘四‘ #中文数字
num4=‘Ⅳ‘ #罗马数字

#isdigt:bytes,unicode
print(num1.isdigit()) #True
print(num2.isdigit()) #True
print(num3.isdigit()) #False
print(num4.isdigit()) #False

#isdecimal
#Python isdecimal() 方法检查字符串是否只包含十进制字符。这种方法只存在于unicode对象。
#bytes类型无isdecimal方法
print(num2.isdecimal()) #True
print(num3.isdecimal()) #False
print(num4.isdecimal()) #False

#isnumberic:unicode,中文数字,罗马数字
#bytes类型无isnumberic方法
print(num2.isnumeric()) #True
print(num3.isnumeric()) #True
print(num4.isnumeric()) #True

#三者不能判断浮点数
num5=‘4.3‘
print(num5.isdigit())
print(num5.isdecimal())
print(num5.isnumeric())
‘‘‘
总结:
    最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景
    如果要判断中文数字或罗马数字,则需要用到isnumeric
‘‘‘

#is其他
name=‘egon123‘
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isidentifier()) #字符串里面只要是符合变量的规则返回TRUE
print(name.islower())    #包含字母,并且只有全部是小写才返回TRUE
print(name.isupper())
print(name.isspace())   #检查是否只有空格
print(name.istitle())   #检查所有单词首字母是否大写

  

原文地址:https://www.cnblogs.com/linshuhui/p/8947556.html

时间: 2024-11-05 22:07:33

数值与字符串类型的相关文章

第四章 数值和字符串类型

@数值和字符串 python的数据类型体现在数据上,数据是什么类型,他就是什么类型. 数值 数值分为整数(int),浮点数(float)以及decimal和fraction 变量引用: 表达式,有加减乘除. 可以用占位符传递数据:(浮点型显示并保留两位小数) 用于比较: 在数值中,我们有一个内置的math函数可以直接导入引用. math.floor() 在横坐标中往左移: math.ceil() 在横坐标中往右移 math.trunc() 在横左边中往0移 round()四舍五入法. 数值可以转

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2--python文件类型.变量.数值.字符串.元组.列表.字典 一.Python文件类型 1.源代码 python源代码文件以.py为扩展名,由pyton程序解释,不需要编译 [[email protected] day01]# vim 1.py #!/usr/bin/python        print 'hello world!' [[email protected] day01]# python 1.py hello world! 2.字节代码 Python源码文件

SpringMVC中的返回值问题之二返回数值类型和字符串类型

返回数值类型和字符串类型 需要导入依赖 当引入Jackson-databind-2.5.1.jar时自动引入Jackson-annotations-2.5.0.jar <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core --><dependency> <groupId>com.fasterxml.jackson.core</groupId> <a

Mongo字符串类型的数值查询---$Where查询介绍

?        在Mongo中都知道字符串类型大小比较都是以ASCII进行比较的,所以无法真实比较字符串类型的数值大小 ?      比如查询age大于3的: db.getCollection('ddzinttest').find({"age":{$gt:"3"}}) 得到的结果肯定不是我们所需要的    那么这种问题该怎么解决呢.Mongo中有一种**$where**查询,这种查询是可以解决这样需求, db.getCollection('ddzinttest')

mysql按照字符串类型的数值按数值进行排序

很明显,我写的sql是希望按照这三个字段进行升序排列,查看之后发现scene_no是varchar类型,第一次遇到这个问题我很不解,就算是字符串类型为什么要分开排序呢?这样不就等于把“10”分成“1”.“0”进行排序的吗,wtk!?这么神奇吗?百度了一下字符串类型是如何进行排序的,看了一些答案自己尝试了一下果然OK! 因为mysql进行的排序规则是按照ASCII码进行排序的,并不会自动的识别出这些数据是数值,sql改为 order by 字段名称+0 desc/asc的形式进行排序 即可.这样m

20160421字符串类型;日期时间类型数学类型

第13天 2016-04-21 一.字符串类型   string Trim() - 去头尾的空格,中间的空格不能去. ToUpper() - 把字符串的字母全变成大写. ToLower() - 把字符串的字母全变成小写. StartsWith("子串") - 是否以“子串”开头,是-true EndsWith("子串") - 是否以“子串”结尾,是-true Contains("子串") - 是否包含“子串”,是-true Substring(起

Python学习笔记整理四--字符串类型

定义:元素以引号包围的.元素可以是任意类型的有序的不可修改的序列: 定义字符串: str()  如:a = str(1234) ''     如:a = 'nihao' ""    如:a = "nihao" ''' ''', """ """ 如:a = '''nihao''', a = """nihao""" 注意: 当需要用到缩写如I'm时,就

POI读取excel单元格,获取单元格各类型值,返回字符串类型

package a; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.text.DecimalFormat; import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.h

Redis学习笔记08Redis数据类型之(1) 字符串类型

1.1.1. set 设置字符串类型的键值,如果键已存在,则之前的值被覆盖,不关注之前的键值的类型. 语法: SET key value [EX seconds] [PX milliseconds] [NX|XX] 参数: key  键名 value 键值 EX seconds - 过期时间,秒. PX milliseconds -- 过期时间,毫秒. NX -- 仅仅当键不存在时才设置. XX -- 仅仅当键已经存在时才设置. 返回值: OK:操作成功. nil:操作失败. 例子: redis