Jython - 变量和数据类型
变量是计算机内存中的命名位置。 每个变量可以在其中保存一条数据。 与 Java 不同,Python 是一种动态类型语言。 因此,在使用 Jython 时也是如此; 变量的数据类型的事先声明没有完成。 数据决定了变量的类型,而不是变量的类型决定了可以存储哪些数据。
在下面的示例中,变量被分配了一个整数值。 使用 type() 内置函数,我们可以验证变量的类型是否为整数。 但是,如果为同一个变量分配了一个字符串,则 type() 函数会将字符串作为同一个变量的类型。
> x = 10 >>> type(x) <class 'int'> >>> x = "hello" >>> type(x) <class 'str'>
这解释了为什么 Python 被称为动态类型语言。
以下Python内置数据类型也可以在Jython中使用 −
- 数字
- 字符串
- 列表
- 元组
- 字典
Python 将数字数据识别为数字,它可以是整数、带浮点数的实数或复数。 字符串、列表和元组数据类型称为序列。
Jython 数字
在 Python 中,任何有符号整数都被称为"int"类型。 为了表示一个长整数,字母"L"附在它上面。 带有小数点的数字将整数部分与小数部分分开,称为"浮点数"。 小数部分可能包含使用"E"或"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 字符串
字符串是包含在单引号(例如"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 列表
列表是一种序列数据类型。 它是用逗号分隔的项的集合,不一定是同一类型,存储在方括号中。 可以使用从零开始的索引访问列表中的单个项目。
以下代码块总结了列表在 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 表达式 | 说明 |
---|---|
len(List) | 长度 |
List[2]=10 | 更新 |
Del List[1] | 删除 |
List.append(20) | 追加 |
List.insert(1,15) | 插入 |
List.sort() | 排序 |
Jython 元组
元组是存储在括号中的以逗号分隔的数据项的不可变集合。 无法删除或修改元组中的元素,也无法将元素添加到元组集合中。 以下代码块显示元组操作。
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 字典
Jython 字典类似于Java 集合框架中的 Map 类。 它是键值对的集合。 用逗号分隔的对包含在大括号中。 Dictionary 对象不遵循从零开始的索引来检索其中的元素,因为它们是通过散列技术存储的。
同一个键不能在字典对象中出现多次。 但是,多个键可以具有相同的关联值。 下面解释了 Dictionary 对象可用的不同功能 −
dict = {'011':'New Delhi','022':'Mumbai','033':'Kolkata'} print "dict[‘011’]: ",dict['011'] print "dict['Age']: ", dict['Age']
下表描述了一些与字典相关的最常见的 Jython 表达式。
Jython 表达式 | 说明 |
---|---|
dict.get(‘011’) | 搜索 |
len(dict) | 长度 |
dict[‘044’] = ‘Chennai’ | 附加 |
del dict[‘022’] | 删除 |
dict.keys() | 键列表 |
dict.values() | 值列表 |
dict.clear() | 移除所有元素 |