python之路《五》字符串的操作
python的里的字符串的操作是可以说是最常见也是最实用的
我们通常使用双引号来表示字符串“ ”创建字符串很简单,定义一个变量就可以了
1 name = 'my name \t is book'
2 # 当然在此\t \n还是和其他语言相同的结果,
3 # 为了表示出来我在name变量的定义中也写上了
1.访问字符串的值
其实的python的底层也是用c写的。那么我们用c语言的形式来看一看字符串的形式
1 int main()
2 {
3 char name[]="book"
4 //这是c语言的字符串的定义那么这也是最简单的定义
5 char name1[]={'b'.'o','o','k','\0'}
6 //这才是字符串的真正的存在形式
7
8 return 0;
9 }
通过上面的代码我们就可以看到,我们的字符串在存储空间中也是易数组的形式存的
在我们的python中也不列外,既然如此那在我们的python中字符串就有了一个性质----“切片”
假如我们现在将字符串当作列表一样访问会出现什么呢
1 name = 'my name \t is book'
2 # 这是一个最简单的调用方式
3 print(name[0])
4
5 # 答案很简单 自然是m
由此我们就知道了 原来啊 字符串就是就是一个列表存储这字符串中的每个元素
解释了这么就相信“切片”这个性质大家应该也有所理解了
那么字符串肯定也会有之前列表一样的增删改查。并且还引申出来了许多其他的功能
我们一 一来看
name = 'my name \t is book'
print(name.count('a'))
# 统计有几个字母a
print(name.capitalize())
# 首字母大写
print(name.center(50, '='))
# 打印五十个字符不够’=‘补上
print(name.encode())
# 转二进制
print(name.endswith('ok'))
# 判断以什么结尾
print(name.expandtabs(tabsize=30))
# 将一个tab键转换成多少个空格
print(name.find('book'))
print(name[9:])
# 切片 这里的意思呢就是从第10个字符一直到最后一个
# 注意在字符串的切片里面中括号里面一般都是左闭右开
print(name.isalnum())
# name包括英文字母与阿拉伯数字
print(name.isalpha())
# 纯英文字符
print(name.isidentifier())
# 判断是否是一个合法的变量名
print('+'.join(['1', '2', '3']))
# join 的用法
print(name.ljust(50, '?'))
# 左对齐长度为50 不够用?补上
print(name.lower())
# 将大写转小写
print(name.upper())
# 将 小写转大写
print(name.lstrip())
# 从左边去掉空格和回车
print(name.strip())
# 去掉两头的空格和回车 p = str.maketrans('abcdefg', '1234567')
# 将对应的字符串转成后面的字符
print('book'.translate(p))
# 随机密码可以这样来
print('book zczc zcf'.split('o'))
# 按每个o分成列表(o被当成分隔符不会加入列表) 默认为空格
print('book zczc zcf'.splitlines())
# 按换行来分成列表
print('Book Liu'.swapcase())
# 大写变小写 小写变大写
print('Book Liu'.title())
# 首字母大写
print('Book Liu'.zfill(50))
# 为50个字节不够补0
其实到这里字符串的操作就已经差不多了 字符串的操作 大家只需要了解一下知道有这么东西可以这么用就够了倒是用到了查一下就是了 那么我们平常在网上爬取到源代码之后 基本上都要我们使用字符串的操作将需要的信息提取出来。
在让我来看一下格式化打印
python字符串格式化符号:
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
格式化操作符辅助指令:
符号 | 功能 |
---|---|
* | 定义宽度或者小数点精度 |
- | 用做左对齐 |
+ | 在正数前面显示加号( + ) |
<sp> | 在正数前面显示空格 |
# | 在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X') |
0 | 显示的数字前面填充'0'而不是默认的空格 |
% | '%%'输出一个单一的'%' |
(var) | 映射变量(字典参数) |
m.n. | m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话) |
python之路《五》字符串的操作的更多相关文章
- NO.3:自学python之路------集合、文件操作、函数
引言 本来计划每周完成一篇Python的自学博客,由于上一篇到这一篇遇到了过年.开学等杂事,导致托更到现在.现在又是一个新的学期,春天也越来越近了(冷到感冒).好了,闲话就说这么多.开始本周的自学Py ...
- python开发_python中字符串string操作
在python中,对于字符串string的操作,我们有必要了解一下,这样在我们的以后的开发中会给我们带来很多方便 下面是我学习的笔记: #python-string #python中的字符串用单引号' ...
- Python自学笔记之字符串的操作
1.将字符串全部变为小写:lower() casefold() 范围更广 2.将字符串全部变为大写:upper() 3.判断是否大小写:isupper() islower() 4.居中:center( ...
- 小白的Python之路 day2 字符串操作 , 字典操作
1. 字符串操作 特性:不可修改 name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 '- ...
- python之路(五)-文件操作
文件操作无非两个,即:读.写 python 2.x: 文件句柄 = file('文件路径', '模式') python3.x: 文件句柄 = open('文件路径', '模式') 打开文件的模式有: ...
- Python之路Day12--mysql介绍及操作
上节回顾: 1. RabbitMQ a. 平均分发 b. perfetch = 1 c. durable 队列持久化 deliver_mode = 2 消息持久化 d. 1对多广播 exchang ...
- python之路五
内建模块 time和datetime 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现 ...
- Python学习(五) —— 文件操作
一.文件操作 1.文件操作:数据持久化的一种 步骤:找到文件,打开文件,操作:读.写.追写,关闭文件 打开文件:f = open(文件路径,操作模式,编码方式),f:文件句柄.文件 ...
- python学习二,字符串常用操作
字符串可以说是在日常开发中应用最广泛的了,现在来总结下有关python中有关字符串一些常用操作 首先我们声明一个字符串变量 str = "hello world" 下面我们来依次介 ...
- python之Redis的字符串类型操作
redis的数据类型: 字符串型 哈希 列表 集合 有序集合 1.String(字符串类型) set 命令: 设置一个键和值,键存在则只覆盖,返回ok > s ...
随机推荐
- ansible使用playbook的简单例子(ansible2.9.7)
一,ansible使用playbook的优点 1,用ansible执行一些简单的任务,使用ad-hoc命令就可以解决问题 如果执行复杂的功能,需要大量的操作,执行的ad-hoc命令会不够方便,这时我们 ...
- python文件管道 下载图集
# -*- coding: utf-8 -*- import re from time import sleep import scrapy from scrapy.linkextractors im ...
- 圆形进度条的模仿3-DrawArc,DrawCircle,DrawText,自定义属性实例讲解
前面两篇中已经讲过如何使用drawARC,等,画其他的图形的方法的使用也是一样的,只是参数不同, 同时也讲了如何通过xml进行自定义属性,接下来这篇便是通过实例讲解如何实地应用起来, 效果如下,点击开 ...
- jq ajax封装
//ajax公共方法,zs 2017-06-14 $.extend({ //比jq的ajax多了的参数: //salert是否在请求成功后弹出后台的SuressStr字段值 //ealertStr:请 ...
- Docker知识总结
目录 1 安装docker 2 docker基本概念 2.1 Docker是容器化平台 2.2 Docker体系结构 2.3 容器与镜像 3 docker常用命令 3.1 快速安装tomcat 3.1 ...
- 一个基于canvas的移动端图片编辑器
欢迎使用 canvas_mobile_drag 项目地址:https://github.com/xiaosu95/canvas_mobile_drag 点击查看demo(在移动端上查看) 该插件是一款 ...
- revel run报错 undefined: sys call.SIGUSR2"
revel run报错,报错信息为 o Compilation Error (in ..\\..\\revel\\server_adapter_go.go:135): undefined: sysca ...
- HashMap 中的哈希值计算问题
date: 2020-08-21 16:48:00 updated: 2020-08-21 16:52:00 HashMap 中的哈希值计算问题 1. hash 计算 JDK1.8 HashMap源码 ...
- 前后端分离Java后端主流开发环境框架20200622
开发环境: IDE:IntelliJ IDEA 2017+ DB: mysql5.7.4.PostgreSQL.mongoDB.redis JDK:JDK1.8+ Maven:Maven 3.2.3+ ...
- 求职时这样回答问题你就输了!来自IT类面试官视角的深度解读
摘要:在IT工程师准备写简历时,经常会遇到这些令人头疼的问题:应届生没有实践经验:不确定哪些信息该写不该写:不知道如何在简历上展现自己的优势:不知道如何编写项目经验一栏:为了高大上写上了自己不熟悉的技 ...