Jython 简明教程
Jython - Variables and Data Types
变量是计算机内存中的命名位置。每个变量都可以在其中保存一个数据片段。与Java不同,Python是一种动态类型语言。因此,在使用Jython时;也不进行变量数据类型的先前声明。决定可以在其中存储哪些数据的,不是变量的类型,而是数据。
在以下示例中,已为变量指定了整数值。使用type()内置函数,我们可以验证变量的类型是否为整数。但是,如果为同一个变量指定了一个字符串,那么type()函数将会把同一个变量的类型作为字符串。
> x = 10
>>> type(x)
<class 'int'>
>>> x = "hello"
>>> type(x)
<class 'str'>
这解释了为什么Python被称为动态类型语言。
以下Python内置数据类型也可以在Jython中使用 −
-
Number
-
String
-
List
-
Tuple
-
Dictionary
Python 将数值数据识别为一个数字,它可以是整数、带有浮点的实数或复数。字符串、列表和元组数据类型被称为序列。
Jython Numbers
在 Python 中,任何带符号整数都表示为类型“int”。若要表示长整数,则在其后附加字母“L”。数字用小数点将整数部分与小数部分分开,称为“浮点数”。小数部分可能包含指数,该指数以科学计数法表示,使用“E”or“e”。
在 Python 中复数也被定义为数值数据类型。一个复数有一个实部(一个浮点数)和一个包含“j”的虚部。
为了表示八进制或十六进制中的一个数字,在其前加上“ 0O ”或“ 0X ”。以下代码块给出了 Python 中不同数字表示形式的示例。
int -> 10, 100, -786, 80
long -> 51924361L, -0112L, 47329487234L
float -> 15.2, -21.9, 32.3+e18, -3.25E+101
complex -> 3.14j, 45.j, 3e+26J, 9.322e-36j
Jython Strings
字符串是任何一系列字符,被单引号(例如“hello”)、双引号(比如“hello”)或三重引号(例如““hello””或“““hello”””)括起来。如果字符串的内容跨越多行,三重引号尤其有用。
转义序列字符可以原样包含在三重引号字符串中。以下示例展示了在 Python 中声明字符串的不同方法。
str = ’hello how are you?’
str = ”Hello how are you?”
str = """this is a long string that is made up of several lines and non-printable
characters such as TAB ( \t ) and they will show up that way when displayed. NEWLINEs
within the string, whether explicitly given like this within the brackets [ \n ], or just
a NEWLINE within the variable assignment will also show up.
"""
当打印第三个字符串时,将生成以下输出。
this is a long string that is made up of
several lines and non-printable characters such as
TAB ( ) and they will show up that way when displayed.
NEWLINEs within the string, whether explicitly given like
this within the brackets [
], or just a NEWLINE within
the variable assignment will also show up.
Jython Lists
列表是一种序列数据类型。它是由逗号分隔的项组成的集合,不一定相同类型,存储在方括号中。可以使用基于 0 的索引访问列表中的各个项。
以下代码块总结了 Python 中列表的用法。
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
下表描述了与 Jython 列表相关的一些最常见的 Jython 表达式。
Jython Expression |
Description |
len(List) |
Length |
List[2]=10 |
Updation |
Del List[1] |
Deletion |
List.append(20) |
Append |
List.insert(1,15) |
Insertion |
List.sort() |
Sorting |
Jython Tuples
元组是一个不可变的集合,其中逗号分隔的数据项存储在括号中。不能删除或修改元组中的元素,也不能向元组集合中添加元素。以下代码块显示了元组操作。
tup1 = ('physics','chemistry‘,1997,2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]
Jython Dictionary
Jython 字典类似于 Java 集合框架中的 Map 类。它是键值对集合。以逗号分隔的键值对括在花括号中。字典对象不会遵循基于 0 的索引来检索其内部的元素,因为它们是通过散列技术存储的。
相同的键不会在字典对象中出现多次。但是,多个键可以具有相同的值。下面解释了字典对象可用的不同函数。
dict = {'011':'New Delhi','022':'Mumbai','033':'Kolkata'}
print "dict[‘011’]: ",dict['011']
print "dict['Age']: ", dict['Age']
下表描述了与字典相关的一些最常见的 Jython 表达式。
Jython Expression |
Description |
dict.get(‘011’) |
Search |
len(dict) |
Length |
dict[‘044’] = ‘Chennai’ |
Append |
del dict[‘022’] |
Delete |
dict.keys() |
list of keys |
dict.values() |
List of values |
dict.clear() |
Removes all elements |