python字符串和Java字符串

来源:千锋教育
发布时间:2023-11-06 07:33:57
分享

接下来,又到了Python字符串与Java字符串PK的时刻。

Java中有比较字符串的方法,即compareTo()方法与equals()方法,前一个方法逐一比较两个字符串的字符编码,返回一个整型的差值,后一个方法在整体上比较两个字符串的内容是否相等。

Python字符串没有这两个单独的方法,但要实现类似的功能却很简便。先看例子:

myName="Python猫"

cmpName="world"

newName=myName

#直接用比较符号进行compare

myName>cmpName

>>>False

myName==newName

>>>True

cmpName!=newName

>>>True

#比较是否同一对象

myNameiscmpName

>>>False

myNameisnewName

>>>True

上例中,如果把赋值的字符串换成列表或者其它对象,这些比较操作也是可以进行的。也就是说,作比较的能力是Python公民们的一项基本能力,并不会因为你是字符串就给你设限,或者给你开特权。

与此类似,Python公民们自带求自身长度的能力,len()方法是内置方法,可以直接传入任意序列参数,求解长度。Java中则要求不同的序列对象,只能调用各自的length()方法。说个形象的比喻,Python中共用一把秤,三教九流之辈都能拿它称重,而Java中有多把秤,你称你的,我称我的,大家“井水不犯河水”。

Python中曾经有cmp()方法和__cmp__()魔术方法,但官方嫌弃它们鸡肋,所以在Python3中移除掉了。虽然在operator模块中还为它留下了一脉香火,但保不定哪天就会彻底废弃。

importoperator

operator.eq('hello','name')

>>>False

operator.eq('hello','hello')

>>>True

operator.gt('hello','name')

>>>False

operator.lt('hello','name')

>>>True

(3)墙上的门

在Java中,字符串还有一个强大的valueOf()方法,它可以接收多种类型的参数,如boolean、char、char数组、double、float、int等等,然后返回这些参数的字符串类型。例如,要把int转为字符串,可以用String.valueOf(anynum)。

Python字符串依然没有这个单独的方法,但要实现相同的功能却很简便。对Python来说,不同的数据类型转换成字符串,那是小菜一碟,例如:

str(123)>>>'123'

str(True)>>>'True'

str(1.22)>>>'1.22'

str([1,2])>>>'[1,2]'

str({'name':'python','sex':'male'})

>>>"{'name':'python','sex':'male'}"

而从字符串转换为其它类型,也不难,例如,int('123')即可由字符串'123'得到数字123。对比Java,这个操作要写成Integer.parseInt('123')。

在Java的不同数据类型之间,那道分隔之墙矗立得很高,仿佛需要借助一座更高的吊桥才能沟通两边,而在灵活的Python里,你可以很方便地打开墙上的那扇门,来往穿越。

跟Java相比,Python字符串确实没有几项方法,但是事出有因,它们的天赋能力可不弱,所有这些操作都能简明地实现。一方面,Python字符串做不到某些事,但是另一方面,Python可以出色地做成这些事,孰优孰劣,高下立判。

以上内容为大家介绍了python字符串和Java字符串,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。https://www.mobiletrain.org/

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • 关于Python 的 Web 自动化测试的实践 Web测试是软件测试中比较的一个分支,而要实现Web自动化测试则要求测试人员能熟练掌握自动化测试工具和编程语言。介绍免费开源的Web测试工具Selenium,以及流行的编程语言Python。根据自动化
  • Python构造函数该怎么写? 在java中构造函数是与类同名的,而且会伴随着实例化的动作而执行。在python中呢?python中的构造函数叫做init方法,全名是__init__具体看下面代码classPerson():__ge
  • Python继承性和 java 是一样的吗? 聊完了多态,再来看看面向对象的另一个特征:继承性。什么是继承?继承就是定义好了一个类A(父类);再定义一个新类B(子类),类B拥有类A的方法和属性,并且又定义了新的属性和方法。类A称为父类,类B称为子
  • 如何在 python 中打开文件? 使用内置函数open就可以打开文件。先来看下python中对open函数的定义fileobject=open(file_name[,access_mode][,buffering])参数定义如下acc
  • Python中JSON 对象有哪些特点? JSON对象的结构是什么样子呢?上面代码中的obj就是一个JSON对象,我们来观察下它。它是用{}括起来的一个集合,每一项都包含名称和值,如name就是名称,而值就是xxx。名称可以是任意字符串,但必
  • Python中常用的 json 操作有哪些? 刚开始接触json的操作,我主要有下面几个疑问:json操作需要什么库?如何将python对象转换成JSON字符串,更进一步,能不能直接转换成文件句柄存储到文件中?(编码)如何将json字符串转换成p