`
chroya
  • 浏览: 661522 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Python中的简单类型

阅读更多
整数 & 浮点数

整数有两种,分别是 int 和 long。其中 int 最大值是 2147483647 (sys.maxint),而 long 长度仅受内存大小限制。
>>> a = 123
>>> b = 123L
>>> type(a)
<type 'int'>
>>> type(b)
<type 'long'>

浮点数基本上也没有什么特别之处,不过要注意下面写法不同。
>>> a = 1
>>> b = 1.0
>>> type(a)
<type 'int'>
>>> type(b)
<type 'float'>

和数字有关的函数有:

1. abs(x) 取绝对值。
>>> abs(-10)
10

2. coerce(x, y) 将两个数字转换成相同类型。
>>> a = 1.0
>>> b = 2
>>> s = coerce(a, b)
>>> type(s)
<type 'tuple'>
>>> s
(1.0, 2.0)

3. divmode(a, b) 获取商和余数。返回一个 tuple,如 (2, 1) 分别是商和余数。
>>> s = divmod(5, 2)
>>> s
(2, 1)

4. pow(x, y) 取幂,和 ** 操作符意义相同。
>>> pow(2, 3)
8
>>> 2 ** 3
8

5. round(x, [n]) 四舍五入
>>> round(2.4567, 2)
2.46

6. min(x [, y, z...]) 返回最小的一个数。
>>> min(5, 4, 3, 2, 1)
1

7. max(x [, y, z...]) 返回最大的一个数。
>>> min(5, 4, 3, 2, 1)
5

8. cmp(x, y) 比较数字。x > y 返回 1, x == y 返回 0, x < y 返回 -1。
>>> cmp(2, 1)
1
>>> cmp(1, 1)
0
>>> cmp(1, 2)
-1

字符串

Python 中没有字符(char)类型,而且和 C# 一样,字符串是不可以更改的。字符串可以使用单引号(')也可以使用双引号("),或者使用三引号使其跨越多行。
>>> s = """a
b
c
d"""
>>> s
'a\nb\nc\nd'

字符串同样支持转义符。还记得 C# 字符串前面那个常用的 "@" 吗?Python 也有类似的东西,就是 "r"。
// C#
string s = @"c:\windows\notepad.exe";

// Python
s = r"c:\windows\notepand.exe"

比较有意思的是,Python 中的字符串支持使用乘号来创建一个连续字符串。如:
>>> s = "abc" * 6
>>> s
'abcabcabcabcabcabc'

尽管没有字符类型,但依然可以使用索引号来获取字符串中的字符。
>>> s = "abc"
>>> s[0]
'a'

Python 拥有非常方便的切片处理能力,我们可以使用负索引号从字符串结尾进行索引。
>>> s = "abcdefg"
>>> s[1:-2]
'bcde'

这里需要提一下,Python 比较古怪的多变量赋值方式。
>>> a, b, c = (1, 2, 3)
>>> a
1
>>> b
2
>>> c
3
>>> a, b, c = "123"
>>> a
'1'
>>> b
'2'
>>> c
'3'

Python 同样支持格式化字符串,类似 C# 中的 String.Format。包括各种类型以及固定宽度输出。
>>> s = "string = [%-5s], int = [%05d], float = [%.2f]" % ("a", 5, 3.1415)
>>> s
'string = [a ], int = [00005], float = [3.14]'

Python 使用如下方式支持 Unicode。
>>> s = u"abc"
>>> type(s)
<type 'unicode'>
>>> s += "sss"
>>> s
u'abcsss'
>>> a = str(s)
>>> a
'abcsss'
>>> unichr(97)
u'a'

和字符串相关的常用函数有:

1. lstrip() / rstrip() / strip() 好像多数语言都命名为 LTrim() / RTrim() / Trim()。
>>> " abc ".strip()
'abc'

2. expandtabs() 将 TAB 替换成指定数量的空格。
>>> "\tabc".expandtabs(2)
' abc'

3. lower() / upper() 大小写转换。
>>> "ABC".lower()
'abc'
>>> "abc".upper()
'ABC'

4. swapcase() / title() / capitalize() 分别将全部字符,每单词首字符,短语首字符转成大写。
>>> "hello, world!".swapcase()
'HELLO, WORLD!'
>>> "hello, world!".title()
'Hello, World!'
>>> "Hello, World!".capitalize()
'Hello, world!'

5. isxxxx 判断字符串... 没啥好说的。
>>> "abcd".isalpha()
True
>>> "abcd".isalnum()
True
>>> "abcd".isdigit()
False
>>> "1abc".isdigit()
False
>>> "123".isdigit()
True
>>> " ".isspace()
True
>>> " ".isupper()
False

6. find() 查找子串,类似的还有 index() / rindex() / rfind()。rxxx 表示找最后一个子串, index 在找不到时会触发异常。
>>> "abcdefg".find("d", 1, -1)
3
>>> "abcdefg".find("d", 1, -4)
-1
>>> "aa1111aaa".rfind("aaa")
6
>>> "aa1111aaa".index("b")

Traceback (most recent call last):
 File "<pyshell#87>", line 1, in <module>
 "aa1111aaa".index("b")
ValueError: substring not found

7. startwith() / endwith() 判断是否以某个子串开始或结束。

8. count() 统计子串数量。

9. replace() 替换子串
>>> "abc".replace("b", "1")
'a1c'

10. splite() 分解字符串。
>>> "a b c d".split(" ")
['a', 'b', 'c', 'd']
>>> "a b c ".split(" ", 2)
['a', 'b', 'c d']

11. join() 连接字符串。
>>> "|".join(["a", "b", "c"])
'a|b|c'

类型转换

转换函数和多数编程语言类似。
>>> int("123")
123
>>> long("123")
123L
>>> float("123.45")
123.45
>>> float(123)
123.0
>>> float(123L)
123.0
>>> ord("a")
97
>>> chr(97)
'a'
>>> hex(97)
'0x61'
>>> str(123)
'123'
分享到:
评论

相关推荐

    一篇文章弄懂Python中所有数组数据类型

    数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种“数组”类型的实现。 list tuple array.array str bytes bytearray 其实把以上类型都说成是数组是不准确的。这里把数组当作一个广义的...

    Python+中文手册.pdf_python中文手册_Python中文手册_python_

    **Python编程语言** Python是一种高级、通用的编程语言,以其简洁明了的语法和强大的功能而受到广大开发者的喜爱。它的设计哲学强调代码的...通过深入阅读和实践,你将能够掌握Python的强大功能并应用于实际项目中。

    Python使用filetype精确判断文件类型

    filetype.py Small and dependency free Python package to ...一个小巧自由开放Python开发包,主要用来获得文件类型。包要求Python 3.+ 功能特色 •简单友好的API •支持宽范围文件类型 •提供文件扩展名和MIME类型

    java中jython操作把python数据类型转成java类型

    在Java中,Jython是一个非常有用的工具,它允许我们在Java应用程序中嵌入Python代码,并能够无缝地在Python数据类型和Java数据类型之间进行转换。这极大地扩展了Java的生态系统,让我们能够利用Python丰富的库和简洁...

    Python变量的类型-Python中的变量类型

    Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。 Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将其置于Java...

    python3.8中文帮助文档 离线CHM版

    4. **异常处理**:Python 使用 try-except-finally 结构来处理程序中的错误,文档中详述了各种内置异常类型及其用法。 5. **标准库**:Python 有一个庞大的标准库,包括字符串操作、文件和I/O、网络通信、数据结构...

    Python程序设计:Python常量和变量.pptx

    在Python中,变量的创建非常简单,无需预先声明类型,直接通过赋值操作即可创建。例如,`x = 5` 这一行代码就创建了一个名为x的变量,并将其类型设置为整型(int)。Python的这种特性使得代码更加灵活,变量的类型可以...

    python简单的银行管理系统

    在本项目中,"Python简单的银行管理系统"是一个基础的编程实践,主要利用Python语言来实现一个小型的模拟银行系统。这个系统可能包含了用户账户管理、存款、取款、查询余额等基本功能,是学习Python编程和数据库操作...

    Python3.8.2中文API文档

    3. **入门教程**:对于初学者,这是一份很好的起始资料,涵盖了从安装 Python 到编写简单程序的所有基本步骤。它通过实例解释了 Python 的基本语法、数据类型、流程控制和函数,帮助新用户快速上手。 4. **扩展和...

    Python3.6+中文文档.pdf

    Python 是一门简单易学且功能强大的编程语言。它拥有高效的高级数据结构,并且能够用简单而又高效的 方式进行面向对象编程。Python 优雅的语法和动态类型,再结合它的解释性,使其在大多数平台的许多领 域成为编写...

    Python 可变类型和不可变类型-列表、字典的修改和赋值

    Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。 Python还被语言流行指数的编译器Tiobe将它被评为最受欢迎的编程语言,20多年来首次将Python置于...

    python3.7 官方中文手册文档全套

    3. **类型注解(Type Annotations)**:Python 3.5引入了类型注解,Python 3.7对此进行了增强,增加了全局命名空间中的类型注解,使得静态类型检查工具能更好地分析代码,提高了代码的可读性和维护性。 4. **新的...

    Maya python简易教程

    Maya Python 简易教程 Maya Python 是一种基于 Python 语言的 Maya 脚本语言,用于自动化 Maya 的操作和开发插件。下面是 Maya Python 简易教程的知识点: 1. Maya Python 简介 Maya Python 是用 Python 语言包裹...

    Python 简单入门教程

    这篇“Python简单入门教程”是为那些希望掌握Python3.x基础知识的人准备的。在这里,我们将深入探讨Python的基本概念、语法结构以及一些常用库的使用。 1. **Python简介** Python是一种解释型、面向对象的编程语言...

    MayaPython简易教程.doc

    教程注重实践,通过简单易懂的例程来展示Python在Maya中的实际应用,尤其适合没有编程背景但有一定Maya操作经验的用户。教程的目标是提供一个轻松的起点,帮助初学者建立起Maya Python的基础,为后续深入学习打下...

    python基本数据类型

    在Python中,数据类型是编程的基础,因为它们定义了变量可以存储的数据种类。本文将深入探讨Python的基本数据类型及其相关概念。 1. **表达式**:表达式是编程语言中的基本组成部分,它们用于计算值。在Python中,...

    python简易教程案例_python简单案例_python_simplestz7z_

    python编程案例教程课后答案-Python编程练习题学习汇总 数字计算;关于数轴和长整型数据类型的练习;平方数的操作练习;日期计算,编程练习

    Python中的枚举类型:使用`enum`模块的深入指南

    在Python 3.4中,引入了enum模块,它提供了一个Enum类,使得定义和使用枚举类型变得简单而强大。本文将详细介绍如何在Python中使用enum模块定义枚举,包括枚举的基础概念、定义方法、使用场景以及高级应用。 Python...

    Python的数字类型.ppt

    Python的数字类型和表达式操作符使得编写涉及数学计算的代码变得简单而直观。无论是基础的数学运算还是复杂的复数计算,Python都提供了相应的支持。通过理解和熟练使用这些数字类型和操作符,开发者可以在Python环境...

Global site tag (gtag.js) - Google Analytics