星火: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,而不能判断值;

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

  1. python无效的类字符串_Python基础-字符串处理

    ​你好,我是goldsunC 让我们一起进步吧! 字符串操作与处理 字符串是编程语言中经常会遇见的东西,而字符串又和那些编程语句什么的不太一样,我们可能需要对一个字符串进行各种各样的处理,后面我将给出 ...

  2. python打印字符串的前五行_python基础-字符串(6)

    一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...

  3. python中return输出字符串_python基础——字符串

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

  4. python中百分号可以格式化_Python基础-字符串格式化_百分号方式_format方式

    原博文 2016-11-29 22:42 − Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式 ...

  5. 以30字符宽居中输出python字符串_python基础--字符串

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

  6. c++ 字符串合并_Python基础字符串处理

    你好,我是goldsunC 让我们一起进步吧! 字符串操作与处理 字符串是编程语言中经常会遇见的东西,而字符串又和那些编程语句什么的不太一样,我们可能需要对一个字符串进行各种各样的处理,后面我将给出我 ...

  7. 运行python程序的两种方式交互式和文件式_Python基础知识2

    运行Python程序的两种方式 小白学习,如有错误欢迎指点 一.每位小白写的第一个Python程序 1.运行Python程序的两种方式 1.1 交互式模式(即时对话) 打开cmd,打开Python解释 ...

  8. python序列类型举例说明_Python基础__Python序列基本类型及其操作(1)

    本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合.这里的对象可以是数字.字符串等.根据功能的不同将序列分为字符串.列表.元组,本文将以下这几种对象做一些介绍. 一. 字 ...

  9. load()是python文件操作的函数_python基础总结(函数,文件操作)

    divmod(a, b)#分别取商和余数 float([x])#将一个字符串或数转换为浮点数.如果无参数将返回0.0 int([x[, base]])#将一个字符转换为int类型,base表示进制 l ...

最新文章

  1. MySQL-Front,MySQL的企业管理器
  2. html5+原生js画的瀑布,果然程序员不适合做设计吗?
  3. 动手实现一个 LRU cache
  4. 比较全的 POM.xml
  5. sql where中用case_从零学会SQL:求职面试题(汇总)
  6. QMake Automatic Dependencies
  7. linux虚拟存储技术,红帽Linux 7.0发布:整合虚拟存储技术
  8. Python学习笔记——控制语句
  9. mysql 漏洞 2015_Oracle MySQL Server远程安全漏洞(CVE-2015-0411)
  10. 零基础学python看什么书好?
  11. [转载] HTML所有标签及其属性汇总
  12. DPDK框架原理简介 (0002转)
  13. 计算机基础一级证exlse函数,原创—EXCEL自定义函数完成CPK/PPK/CP/PP/CPU/CPL等的计算...
  14. java的博_小博老师解析Java核心技术 ——I/O流
  15. Android的鼠标事件流向
  16. UE4中修改模型的中心点
  17. 谷歌的广告业务是如何赚钱的?
  18. 【重要补充】关于第三方潜在SDK导致的5.1.2Data use sharing
  19. TFS淘宝分布式文件核心存储引擎源码架构剖析实现
  20. CSS3:3D变换动画

热门文章

  1. unix环境中以下列出的oracle,浙江中医药大学2012研究生计算机复习题
  2. 通过Alertmanager实现Prometheus的告警告警配置(邮箱加钉钉)
  3. 2021-04-19
  4. Oracle 常用 语句
  5. svg实现圆环倒计时动画效果
  6. linux写makefile用tab报错,隐含规则 - linux makefile教程
  7. 软件架构模式 mark Richards - 读后总结 2 事件驱动架构
  8. Verilog语言基础语法
  9. pyth命令_如何:在Windows上设置用于从命令行运行.py文件的Python可执行文件
  10. 第五十七章 Caché 函数大全 $REPLACE 函数