python按位置从字符串提取子串的操作是_Python基础-字符串操作和“容器”的操作...

星火:Python基础-IF和循环​zhuanlan.zhihu.com星火:Python基础-函数​zhuanlan.zhihu.com星火:Python基础-模块​zhuanlan.zhihu.com星火:Python基础-数据结构​zhuanlan.zhihu.com

如今Python好像成为了学习数据分析 机器学习的基本语言之一,为一探究竟,Python的学习说干就干!

由于现在Anaconda集成了Python和jupyter notebook和众多数据分析所需要的包,所以我们就直接安装一个 anaconda 即可;

Anaconda Prompt(终端)中启动,

conda:是一个包管理器和环境管理器

conda list #查询包

conda upgrade --all #升级包

conda install package_name #安装指定包

conda update package_name #更新指定包

conda install nb_conda #安装nb_conda用于notebook自动关联nb_conda的环境

conda create -n env_name package_names #创建环境

输入 jupyter notebook 开始:

按照惯例,先来一句

一、变量的命名

养成习惯,在定义变量时,变量名字应该按照 “代表含义的名字”+“变量类型”组成,

例如 nameStr

二、容器:列表,元组,字典

其中“容器”表是:字符串、列表、元组、字典等,指能包含内容的集合

列表 list,使用 [ ] = 内容为 字符串或者变量,元素可修改;

元祖 tuple,使用 ( ) = 元素不可修改;

字典 Dictionary,使用{ } = 内容为“键值对” ,一个key对应一个值;(是一个无序集合,通过 键值对 保存数据)

list、tuple、字典中,查询索引,使用index

print (list.index('内容'))

list、tuple、字典中,统计某一元素出现的次数,使用count

print ( tuple.count('元素'))

list、tuple、字典中,计算所包含的元素数量,使用 len

print (len (list))

list 中元素的添加可使用 append() ;

list = ()

list.append(' ')

list 、 tuple 、字典中可使用 pop() 或者 del 对元素进行删除;

girllist = ['Michael', 'Amy', 'Garwing', 'Kiyr', 'Alyson']

del girllist[3]

girllist

返回:['Michael', 'Amy', 'Garwing', 'Alyson']

girllist.pop(1) # pop 可以指定要删除元素的索引

返回:'Amy'

合并字典,可使用 update(),如果被合并的字典中包含已存在的键值对,则会覆盖原有字典中的键值对。

字典1 = {}

字典2 = {}

字典1.update(字典2)

name_list = ['Michael','Amy','Garwing','Gaga']

1、取数值和取索引

print(name_list[0])

取索引,使用index方法(在交互界面查找索引这个单词),传入一个需要查找的数值,会输出此数值的序号

print(name_list.index('Amy'))

2、修改list中指定位置的内容的数值

name_list[3] = 'Alyson'

3、向列表中增加一个数据

三个方法。

append 向列表末尾追加数据、

name_list.append('Phebe')

insert 向列表的指定位置插入数据、

name_list.insert(1,'Rachel')

extend把另外一个列表中的完整内容加入

tem_list = ['Kiyr','Monica']

name_list.extend(tem_list)

4、从当前list中删除指定数据

remove ,可以从列表中删除指定的数据

name_list.remove('Rachel')

clear 可以清空整个列表

name_list.clear()

pop 在默认情况下可以删除列表中最后一个元素,

name_list.pop()

pop 可以指定要删除元素的索引

name_list.pop(4)

del 也可以删除指定的元素

del name_list[4]

del这个关键字本质上是将一个变量从内存中删除

name = '小明'

del name

三、字符串的常用操作

字符串中的转义字符:

\n 换行 \t横向制表符,垂直方向对齐 \r 回车

-----------------------------

1). 查找和替换

hello_str = "Hello world"

1.判断是否以指定字符串开始

print(hello_str.startswith("Hello"))

2.判断是否以指定字符换结束

print(hello_str.endswith("world"))

3.查找执行字符串

index同样可以在查找指定的字符串在大字符换中的索引

print(hello_str.find("llo"))

index如果指定的字符串不存在,会报错

find如果指定的字符串不存在,会返回-1

rfind方法是从右边开始查找

rindex方法也是从右边开始查找;

2). 字符大小写

可以使用 title() 使字符首字母大写;

3). 文本对齐

# 要求:按照顺序并且居中对齐输出以下内容

poem = ["登黄鹤楼",

"王之涣",

"白日依山尽",

"黄河入海流",

"欲穷千里目",

"更上一层楼"]

for poem_str in poem:

print("|%s|" % poem_str.center(10," "))

4). 取出空白字符

当获取的文字中含有很多空白字符,

先使用strip方法取出字符串中的空白字符

print("|%s|" % poem_str.strip().center(10," "))

5). 拆分和连接

string.split(str = "", num ) 就是以空白字符作为分隔符,把内容拆分成一个列表

string.join(seq) ,使用sting作为分隔符,将seq中的所有元素(的字符串表示)合并为一个新的字符串

1.将字符串中的空白字符都去掉

2.再使用“ ”作为分隔符,拼接成一个整齐的字符换

poem_str = "登鹤雀楼\t 王之涣\t 白日依山尽\t 横河入海了 \t\n 欲穷千里目 \n\t 更上一层楼"

1.拆分字符串

poem_list = poem_str.split()

print(poem_list)

2.合并字符串

poem = " ".join(poem_list)

print(poem)

输出:

['登鹤雀楼', '王之涣', '白日依山尽', '横河入海了', '欲穷千里目', '更上一层楼']

登鹤雀楼 王之涣 白日依山尽 横河入海了 欲穷千里目 更上一层楼

四、切片

语法: 字符串[开始索引:结束索引:步长]步长表是如果想有有间隔的循环切片,就设定步长;结束索引不指定,就会自动切到最后一个字符。还可以使用倒叙方式,就是从-1开始。

注意:结束索引的元素不包含在切片中

演示:

num_str = "0123456789"

1.num_str[2:6] # 截取从2-5位置的字符串

2.num_str[2:] # 截取从 2-末尾 的字符串

3.num_str[:6] # 截取从 开始-5 位置的字符串

4.num_str[:] # 取 完整 的字符串

5.num_str[::2] # 从开始位置,每隔一个字符截取字符串

6.num_str[1::2] # 从1开始,每隔一个字符截取字符串

7.num_str[2:-1] # 截取从 2-末尾-1 的字符串

8.num_str[-1:-2] # 截取字符串末尾两个字符

9.num_str[::-1] # 字符串的逆序(面试题)

五、公共方法

其中 del 可以当关键字使用,也可以作为函数使用

在字典中,max和min只会对 key进行比较

比较大小,可直接用 比较运算符

In : " 1 " > " 2 "

Out : False

In : "aaaa" < "bbbb"

Out : True

In : [1, 1, 1] < [ 2, 2 ,2]

Out : True

其中字典与字典不能比较大小

In : [1,2] * 5

Out : [1,2,1,2,1,2,1,2,1,2]

in : (1 , 2) * 2

out : ( 1 ,2 ,1, 2)

字典不能使用*,因为字典中键值对的key是唯一的。

合并运算符

in : [1,2]+[3,4]

out : [1 ,2 ,3 ,4] "+"输出的是一个新的列表

in : t_list = [1 ,2]

in : t_list.extend([1,2])

in : t_list

out : [1 ,2 ,3 ,4] expend输出的是原有的列表,将内容加进原有的列表中

in : t_list.append(0)

in : t_list

out : [1 ,2 ,3 ,4 ,0] append 是将加入的内容作为一个独一的元素,加进原有的list中

in : t_list.append([8,9])

in : t_list

out : [1 , 2, 3 ,4, 0 ,[ 8 , 9 ]]

in 和not 被称为 成员运算符

在字典中,用in 和not 查询元素是否存在或不存在,只能判断字典的key,而不能判断值;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值