字符串介绍

1、字符串在内存中的存储

2、字符串的加法

3、字符串的格式化

1. 下标索引

所谓“下标”,就是编号,就好比超市中的存储柜的编号,通过这个编号就能找到相应的存储空间

字符串中"下标"的使用

列表与元组支持下标索引好理解,字符串实际上就是字符的数组,所以也支持下标索引。

如果有字符串:name = 'abcdef',在内存中的实际存储如下:

如果想取出部分字符,那么可以通过下标的方法,(注意python中下标从 0 开始)

name = 'abcdef'

print(name[0])

print(name[1])

print(name[-2])

2. 切片

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

切片的语法:[起始:结束:步长]

步长:表示下标变化的规律。

注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。

我们以字符串为例讲解。

如果取出一部分,则可以在中括号[]中,使用:

name = 'abcdef'

print(name[0:3]) # 取 下标0~2 的字符

name = 'abcdef'

print(name[0:5]) # 取 下标为0~4 的字符

name = 'abcdef'

print(name[3:5]) # 取 下标为3、4 的字符

name = 'abcdef'

print(name[2:]) # 取 下标为2开始到最后的字符

name = 'abcdef'

print(name[1:-1]) # 取 下标为1开始到倒数第2个之间的字符

>>> a = "abcdef"

>>> a[:3]

'abc'

>>> a[::2]

'ace'

>>>a[5:1:2]

''

>>>a[1:5:2]

'bd

>>> a[::-2]

'fdb'

>>> a[5:1:-2]

'fd'

想一想

(面试题)给定一个字符串aStr, 请反转字符串

方法一:

a='helloworld'

b=a[::-1]

print(b)

方法二:

str='abcdefghijkl'

list=[]

for i in str:

list.append(i)

list.reverse()

print(''.join(list))

---------------------
作者:石头里蹦出的猴子
来源:CSDN
原文:https://blog.csdn.net/Amber_shi/article/details/79252203
版权声明:本文为博主原创文章,转载请附上博文链接!

substring() 方法返回字符串的子字符串。

语法

public String substring(int beginIndex)

或

public String substring(int beginIndex, int endIndex)

参数

  • beginIndex -- 起始索引(包括), 索引从 0 开始。

  • endIndex -- 结束索引(不包括)。

下标从零开始,包前不包后
去字符串的9到17位的9个数据
String unifiedSocialCreditCode = "91512081MA62K0260E";
String organizationCodeNumberSplit = unifiedSocialCreditCode.substring(8,17);
MA62K0260
String organizationCodeNumber = "MA62K026-0";
String organizationCodeNumberStr = organizationCodeNumber.replace("-","");
System.out.println(organizationCodeNumberStr);
MA62K0260

String,下表和切片,分割的更多相关文章

  1. linux下使用split 来分割大文件

    linux下使用split 来分割大文件 2010-07-27 15:46:27|  分类: 技术文稿 |  标签:split  分割  linux   |字号 订阅   平常都是使用ssh来进行远程 ...

  2. delphi string.split 按照任意字符串分割语句

    delphi string.split 按照任意字符串分割语句 1.就是把一个指定的字符串用指定的分割符号分割成多个子串,放入一个 TStringList 中 function ExtractStri ...

  3. jquery不能是使用普通的for循环 因为普通的for循环通过下表获取对象 如果通过下表获取对象的话 会转成dom对象

    jquery不能是使用普通的for循环 因为普通的for循环通过下表获取对象 如果通过下表获取对象的话 会转成dom对象

  4. jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)(转)

    版权声明]:版权归作者所有,转载时请以超链接形式标明文章原始出处和作者信息及本声明:http://www.open-lib.com/Forum/Read_69_1.action 前言: 当jquery ...

  5. 让 MySQL 在 Linux 下表名不区分大小写(实为表名全小写)

    把 Windows 下的应用部署到 Linux 下,使用到了 Quartz 集群的特性,所以建了 MySql 的中间表,一启动看到报错: Invocation of init method faile ...

  6. iScroll4下表单元素聚焦及键盘的异常问题

    本文是zawa同事写的一篇博文,相信很多在webapp开发中的同学使用iscroll4会遇到的该问题,问过zawa兄的建议,在这里分享给大家,希望能帮助到各位~ 原文地址:http://www.zaw ...

  7. string下的 maketrans和translate

    在玩python challenge的时候发现一个比较有趣的函数所以记下来. 问题是这样的 g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amkn ...

  8. String中根据,(逗号)进行分割

    package zhengze; public class StringTest07 { public static void main(String[] args) { String s = &qu ...

  9. Oracle 批量修改某个用户下表的表空间

    说明:一般来说要修改表的表空间需要同时修改表的表空间和其对应的索引表空间,并且在修改含有BOLB字段的表的表空间时又不一样,具体请参考末尾的链接 思路:拼凑一个满足条件的批处理查询语句,将查询的结果复 ...

随机推荐

  1. List、Map、Set之间的联系与区别:

    一.数组和集合的区别: 1.数组的大小是固定的,并且同一个数组只能是相同的数据类型 2.集合的大小是不固定的,在不知道会有多少数据的情况下可使用集合. 二.集合的三种类型:list(列表).set(集 ...

  2. 【很好的分享】zookeeper系列

    http://blog.csdn.net/tswisdom/article/details/41522069

  3. 仿 ELEMENTUI 实现一个简单的 Form 表单

    原文:仿 ElmentUI 实现一个 Form 表单 一.目标 ElementUI 中 Form 组件主要有以下 功能 / 模块: Form FormItem Input 表单验证 在这套组件中,有 ...

  4. ionic3隐藏子页面的tabs和配置返回按钮

    在app.modlues.ts文件中修改 imports: [ BrowserModule, IonicModule.forRoot(MyApp, { tabsHideOnSubPages: 'tru ...

  5. SpringBoot之常用注解

    在spring boot中,摒弃了spring以往项目中大量繁琐的配置,遵循约定大于配置的原则,通过自身默认配置,极大的降低了项目搭建的复杂度.同样在spring boot中,大量注解的使用,使得代码 ...

  6. Heap Partition ZOJ - 3963(贪心)

    ZOJ - 3963 贪心做一下就好了 反正别用memset #include <iostream> #include <cstdio> #include <sstrea ...

  7. django rest framework pagination

    REST framework 包含对可定制分页样式的支持.这使你可以将较大的结果集分成单独的数据页面. 分页 API 支持: 以分页链接的形式作为响应内容的一部分. 以分页链接的形式包含在响应的 he ...

  8. 初入 nodejs -遍历文件夹

    //操作文件 /* 1.fs.stat 获取文件状态 2.fs.readdir 读取文件夹数据 3.fs.access 判断文件夹是否存在 4.path.join 拼路径 */ //操作文件 cons ...

  9. 观察者模式 vs 发布-订阅模式

    我曾经在面试中被问道,_“观察者模式和发布订阅模式的有什么区别?” _我迅速回忆起“Head First设计模式”那本书: 发布 + 订阅 = 观察者模式 “我知道了,我知道了,别想骗我” 我微笑着回 ...

  10. elasticsearch-head的安装

    elasticsearch-head是es的一个可视化的客户端插件,可以直接对ES进行增删改查操作,安装前需要先安装NODEJS: 安装: 1.到git上下载源代码: # git clone git: ...