#!/usr/bin/python

# 这一节学习的是python中的字符串操作

# 字符串是在Python中作为序列存在的, 其他的序列有列表和元组

# 1. 序列的操作

S = 'Spam'                      # 定义了一个序列

print(len(S))                   # 获取序列的长度

print(S[0])                     # 获取字符串的第一个字符

print(S[1])                     # 获取字符串的第二个字符

# 结论: python中的字符串是从0开始索引的

# python的变量不需要提前声明
# 当给一个变量赋值的时候就创建了它, 可能赋值的是任何类型的对象
# 变量在使用之前必须赋值 # 反向索引字符串 print(S[-1]) # S中最后一个字符
print(S[-2]) # S中倒数第二个字符 print(S[len(S)-1]) # 从前往后数获得S中最后一个字符 # 2. 分片操作, 也就是可以截取字符串中的一部分 S = 'Spam'
print(S[1:3]) # S中索引从1到2的子串, 不包括3, 也就是说是左闭右开的区间
print(S[1:50]) # 后面的值可以很大
print(S[-50:50]) # 估计从0~len # 在一个分片中, 左边界默认为0, 并且右边界默认为分片序列的长度 print(S[1:])
print(S[0:3])
print(S[:-1]) # 这个也是取除了最后一个的其他字符, 记住是右开的
print(S[:]) # 整个字符串, 记住不写就是0~len # 3. 字符串之间可以用加号+进行连接 print(S + 'xyz') # 也就是Python编写的操作系统通常可以自动地适应不同类型的对象 # 4. 不可变性
# 跟java里面的final是一个意思, 就是你对字符串修改了之后,
# 得到的是另外一个字符串, 而不是在这个基础之上进行的修改 # 5. 字符串对象有哪些方法 # find 查找子串
# replace 替换
# split 分割
# upper 变为大写
# isalpha 判断是不是字母
# rstrip 去掉右边的空白字符
# format 也是格式化的
# 格式化操作, 联想一下printf # 6. 操作字符串的其他方法
# len 获取字符串的长度
# ord 获取字符对应的ascii值
# \0 不代表着字符串结束 print(len('A\0B\0C')) # 结果是5 # python支持单引号、双引号和三引号 # 模式匹配, 就是正则表达式了 import re # 引入regular expression
match = re.match('Hello*(.*)world', 'Hello Python world')
print(match.group(1))
match.group() # 获取所有的匹配的字符串

python学习(四)字符串学习的更多相关文章

  1. 系统学习python第四天学习笔记

    1.解释 / 编译补充 编译型:代码写完后,编译器将其变成成另外一个文件,然后交给计算机执行. 解释型:写完代码交给解释器,解释器会从上到下一行行代码执行:边解释边执行. [实时翻译] 2.字符串功能 ...

  2. python中的字符串学习

    # 1.字符串的下标(索引) # 取字符串中的子串 print('1.字符串的下标(索引)') str1 = 'PYTHON' print(str1[0]) print(str1[-4]) # 2.字 ...

  3. JavaScript学习笔记--ES6学习(四) 字符串的扩展

    ES6对字符串进行了一些扩展,主要表现在对Unicode 大于\uFFFF的字符的处理上. 1. ES6中字符的Unicode表示方法 在ES5中,字符串的Unicode表示方法: \uxxxx . ...

  4. python 第四阶段 学习记录之----异步

    异步: 知识情况: 1.多线程, 多线程使用场景 1.IO操作不占CPU,读写数据(网络中.系统中) 2.计算占CPU, 3.上下文切换不占CPU.它消耗资源 python多线程 不适合CPU密集型的 ...

  5. Python 第四阶段 学习记录之----多线程

    多线程 多线程例子, 注释部份即为多线程的使用 #-*- coding: utf-8 -*- # Wind clear raise # 2017/3/5 下午2:34 import socket im ...

  6. python基础(四)字符串处理

    字符串处理 msg = 'my name is sylar' capitalize方法,将字符串的首字母大写 print 'capitalize方法:', msg.capitalize() swapc ...

  7. SCARA——OpenGL入门学习四(颜色)

    OpenGL入门学习[四] 本次学习的是颜色的选择.终于要走出黑白的世界了~~ OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式. 无论哪种颜色模式,计算机都必须为每一个像素保存一些数 ...

  8. Python学习笔记整理(四)Python中的字符串..

    字符串是一个有序的字符集合,用于存储和表现基于文本的信息. 常见的字符串常量和表达式 T1=‘’ 空字符串 T2="diege's" 双引号 T3=""&quo ...

  9. 【Python基础学习四】字符串(string)

    Python 字符串 字符串是 Python 中最常用的数据类型.可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'hello' va ...

随机推荐

  1. 51Nod 1001 数组中和等于K的数对 And 1015 水仙花数

    1001 数组中和等于K的数对 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K ...

  2. 8个学习.net的博客链接 (以前收藏过更多的,被百度新版搞没了,恨死了)

    原文发布时间为:2012-09-18 -- 来源于本人的百度文章 [由搬家工具导入] Simone Chiaretta’s CodeClimber http://www.haacked.com/ (  ...

  3. Boost::thread库的使用(转)

    原文转自 http://blog.csdn.net/lee353086/article/details/4673790 本文主要由线程启动.Interruption机制.线程同步.等待线程退出.Thr ...

  4. bq25890 ship mode

    Precondition 此是以 evb board 來做實驗的. 沒接 Vbus 僅接 i2c ,仍可以 讀寫 i2c register,但是 adc 似乎不能 working, evb board ...

  5. ASP.NET MVC 实现 AJAX 跨域请求

    ASP.NET MVC 实现AJAX跨域请求的两种方法 和大家分享下Ajax 跨域的经验,之前也找了好多资料,但是都不行,后来看到个可行的修改了并测试下 果然OK了   希望对大家有所帮助! 通常发送 ...

  6. Codeforces 743D Chloe and pleasant prizes(树型DP)

                                                                D. Chloe and pleasant prizes             ...

  7. ansible 2.7.1 快速开始

    refer to 官方手册 https://docs.ansible.com/ansible/latest/modules/modules_by_category.html refer to 中文手册 ...

  8. Unique Binary Search Trees II - LeetCode

    Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...

  9. Centos7下实现多虚拟机互信

    假设CentOS 7三台虚拟机A(192.168.111.10).B(192.168.111.11).C(192.168.111.12),需要保证三台虚拟机之间网络的连通性. 操作步骤: 一.在A机上 ...

  10. ThinkPHP模板包含功能(转载)

    对于一些有共同属性的页面(如页脚),可以单独制作成一个模板,再利用 ThinkPHP 提供的模板包含功能包含进来.这样,当要修改这些公共页面时,只需修改对应的模板即可而不必修改每一个页面.模板的包含使 ...