文章目录

  • 一、赋值操作
    • 1.链式赋值
    • 2.系列解包赋值
    • 补充:常量
  • 二、最基本内置数据类型介绍
    • 1.数字
      • 1)divmod()函数
      • 2)整数
      • 3)浮点数
      • 4)时间的表示
      • 5)例子
      • 6)增强型赋值运算符
      • 7)布尔值
      • 8)比较运算符
      • 9)逻辑运算符
      • 10)同一运算符
      • 11)整体缓存问题
    • 2.字符串
      • 1).字符串编码
      • 2).引号创建字符串
      • 3).空字符串和len()函数
      • 4).转义字符
      • 5).原始字符串
      • 6).字符串拼接与复制
      • 7).print()和input()和str()
      • 8).使用[]提取字符
      • 9).replace()实现字符串替换
      • 10).切片操作
      • 11).split()函数分割
      • 12).字符串驻留机制和字符串比较
    • 3.字符串常用方法汇总
      • 1)常用查找方法
      • 2)去除首尾信息
      • 3)大小写转换
      • 4)字符串排版
      • 5)判断字符串内容
      • 6)字符串format格式化
      • 7)填充与对齐
      • 8)数字格式化

一、赋值操作

1.链式赋值

链式赋值用于同一个对象赋值给多个变量

2.系列解包赋值

系列数据赋值给对应相同个数的变量(个数保持一致)

a,b,c = 1,2,3
a,b,c =c,a,b
print(a,b,c)
>>>3 1 2

补充:常量

python不支持常量,我们只能约定常量的命名规则,以及在程序的逻辑上不对常量的值作出修改。

二、最基本内置数据类型介绍

变量没有类型,但对象有类型
python中最基本的数据类型有:整型、浮点型(小数或科学计数法)、布尔类型(True和Flase)、字符串类型

1.数字

基本运算符

1)divmod()函数

使用divmod()函数同时获得商和余数,返回一个元祖

print(divmod(13,5))
>>>(2, 3)

2)整数

python中整数有四种进制,分别是
二进制—>0b或0B
八进制—>0o或0O
十进制
十六进制—>0x或0X
使用int()实现类型转换
1.浮点数—>整数:正浮点数向下取整,负浮点数向上取整
2.布尔值True转为1,Flase转为0
3.字符串符合整数格式(浮点数格式不行)则直接转成对应整数;否则会报错
自动转型
整数和浮点数混合运算时,表达式结果自动转型成浮点数

3)浮点数

使用float()函数将其他类型转换成浮点型
round(value)函数可以返回四舍五入的值
注:不会改变原有值,而是产生一个新的值

print(round(3.5))
>>>4

4)时间的表示

unix时间点:1970年1月1日00:00:00
time.time()获得当前时刻,精确到微秒

5)例子

定义多点坐标_绘出折线段_计算两点间距离

import turtle
import math#定义多点坐标
x1,y1 = 100,0
x2,y2 = 0,-100
x3,y3 = -100,0#绘制折线图
turtle.penup()
turtle.goto(x1,y1)
turtle.pendown()
turtle.goto(x2,y2)
turtle.goto(x3,y3)#计算两点距离
distance = math.sqrt((x3-x1)**2+(y3-y1)**2)
turtle.write(distance)
turtle.done()

结果如图:

6)增强型赋值运算符

7)布尔值

True和Flase,可以和数字相加

8)比较运算符

9)逻辑运算符


10)同一运算符

is 与 ==的区别
1.is比较对象地址(id)是否相等
2.==比较引用对象的值是否相等,默认调用__eq__()方法
is 比 == 运算效率高的原因
is 的计算很快,因为它不重载,少了函数调用开销而直接比较两个整数id;
而a == b则相当于a.eq(b)重载了对应的方法
is常用的地方-和None值进行比较

a is None or a is not None

11)整体缓存问题

在命令行执行程序时,会将[-5,256]内的整数对象缓存起来
在pycharm中或保存为文件执行程序时,将[-5,任意整数]进行缓存

a = 100000
b = 100000
print(a is b)
>>>True

2.字符串

1).字符串编码

python支持Unicode(16位),可以表示世界上任何书面语言的字符
内置函数ord()可以将字符转换成对应的Uniconde编码
内置函数chr()可以把十进制数字转换成对应的字符

2).引号创建字符串

可以使用成对的单引号或双引号创建字符串
使用两种引号,可以创建本身就包含引号的字符串而不用使用转义字符
连续使用三个单引号或三个双引号,来创建多行字符串—多行注释

3).空字符串和len()函数

len()函数用于计算字符串含有多少字符

4).转义字符

+特殊字符

5).原始字符串

针对打印含有转义字符的字符串
格式:在变量赋值时,在前面加个r

>>> good=r'C:\now\no\nose\note'
>>> good
'C:\\now\\no\\nose\\note'
>>> print(good)
C:\now\no\nose\note

注意:字符串末尾不可以加\,如果加了,python会认为字符串还没有结束,就会报错
需:用“\”对自身进行转义

a = r"c:\n\baidu.com""\\"
print(a)
>>>c:\n\baidu.com\

6).字符串拼接与复制

1.可以使用+将多个字符串拼接起来
2.join()函数用于将一系列子字符串连接起来
要点:两者要达到相同效果,多次使用字符串拼接符+,每次都会生成新的字符串对象;使用join()函数,仅新建一次对象
复制:使用*实现字符串的复制
测试两者之间效率

import time
time1 = time.time()
a = ""
for i in range(1000000):a += "sxt"time2 = time.time()
print("运算时间为:"+str(time2 - time1))
>>>运算时间为:0.41286420822143555
import time
time1 = time.time()
a = []
for i in range(100000):a.append("sxt")b = "".join(a)
time2 = time.time()print("运行时间:"+str(time2 - time1))
>>>运行时间:0.007945775985717773

7).print()和input()和str()

调用print(),默认会自动打印一个换行符
不换行打印:可以通过参数end=“任意字符串”,任意字符串包括转义字符,实现末尾添加任何内容
input()读取输入内容
str()将数字转换成字符串

8).使用[]提取字符


9).replace()实现字符串替换

字符串是不可变类型
使用replace(“old”,“new”)替换某些字符时,通过创建新的字符串来实现

10).切片操作



a = "to be or not to be"
a = a[::-1]
print(a)

11).split()函数分割

split()可以基于指定分隔符将字符串分割成多个子字符串(存储到列表中)
不指定分割符,则默认使用空白字符(换行符/空格/制表符)

12).字符串驻留机制和字符串比较

python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线、字母和数字),会启动字符串驻留机制。
字符串驻留机制:仅保留一份相同且不可变字符串的方法

a = "asd_il_12"
b = "asd_il_12"
print(a is b)
>>>True

3.字符串常用方法汇总

1)常用查找方法

2)去除首尾信息

3)大小写转换

4)字符串排版

5)判断字符串内容

6)字符串format格式化

通过{索引}/{参数名},直接映射参数值,,来实现字符串的格式化
同时有位置参数和关键字参数时,位置参数要在关键字参数之前
关键词参数要在format()里写出参数名

7)填充与对齐

8)数字格式化


python基础2-数据及字符串知识学习相关推荐

  1. python与数据思维基础笔记_Python小课笔记--Python基础:数据和函数(二)

    截图来自Python小课 文|仟樱雪 在Python小课-1-2节中,已经学习了基础模块--数据--数据类型(整数.字符串),以及基础模块--变量,基础模块--函数(input函数.print函数). ...

  2. 在我的新书里,尝试着用股票案例讲述Python爬虫大数据可视化等知识

    我的新书,<基于股票大数据分析的Python入门实战>,预计将于2019年底在清华出版社出版. 如果大家对大数据分析有兴趣,又想学习Python,这本书是一本不错的选择.从知识体系上来看, ...

  3. python基础语法 第0关print-python学习笔记1,新手小白也能看得懂

    这是酸菜在风变编程上学习python时积累的学习笔记,希望能帮到同样也在学习中的小伙伴.持续更新~ 第0关 Print()函数 (1)不带引号:让计算机读懂括号里的内容,打印最终的结果 例:print ...

  4. 阿里云天池 Python训练营Task2: Python基础练习:数据结构大汇总 学习笔记

    本学习笔记为阿里云天池龙珠计划Python训练营的学习内容,学习链接为:https://tianchi.aliyun.com/specials/promotion/aicamppython?spm=5 ...

  5. Python基础入门9:字符串1,字符串的驻留

    文章目录 前言 字符串 字符串的驻留机制 字符串驻留机制的含义与基本原理 驻留机制的优缺点 字符串驻留类别 强制驻留 附录:Python内部执行过程,编译期,运行期介绍 前言 本文主要介绍字符串的定义 ...

  6. python基础(一)- 字符串、基本运算符、打印

    python基础(一) python之禅 import this 字符串 在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号 str1 = 'I told my fren ...

  7. 大数据Python基础——第三章 字符串加列表练习

    目录 字符串 列表 字符串 一.什么是字符串 字符串或串(String)是由数字.字母.下划线组成的一串字符:它是编程语言中表示文本的数据类型:Python程序中的字符串在计算机内存中,统一使用uni ...

  8. 【Python基础】Pandas向量化字符串操作

    一.向量化操作概述 Python内置一系列强大的字符串处理方法,但这些方法只能处理单个字符串,处理一个序列的字符串时,需要用到循环. 那么,有没有办法,不用循环就能同时处理多个字符串呢,pandas的 ...

  9. Python基础教程:拼接字符串的7种方法

    @本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 这篇文章主要给大家总结介绍了关于Python拼接字符串的7种方法,分别是来自C语言的 文章目录 前言 1.来自C语言的%方式 2. ...

  10. Python基础案例-数据可视化

    json数据格式转换 一种轻量级的数据交互格式,可以按照json规定的格式去组织.封装数据 本质上是带有特定格式的字符串,不同语言间的中转数据格式 功能:编程语言中流通的数据格式,不同语言数据格式不同 ...

最新文章

  1. Linux学习笔记4-CentOS7中redis3.2.9安装教程
  2. android图片浏览功能,怎么在Android应用中实现一个网页图片浏览功能
  3. 软化边硬化边_启示录:做完线雕第三天特别丑、边哭边讲线雕有什么副作用?...
  4. iOS 完全复制UIView
  5. 单片机学校实训老师上课需要的工具以及源码分享
  6. java迭代是引用_在迭代递归结构时无法获得可变引用:不能一次多次借用可变引用...
  7. 解决Windows 2003终端服务许可证过期的办法
  8. 为什么都敏捷开发了项目还会延期?!| 技术头条
  9. MapReduce工作机制详解
  10. 如何进行自学软件测试?
  11. dplayer安装php_Dplayer播放器集成p2p加速源码分享
  12. 免费还能商用的视频素材,拿走不谢。
  13. 利用Lightroom添加边框及批量导出
  14. 用命令jar -cvf 打jar包
  15. 广工学生“纯手工”打造赛车 将出征F1赛道
  16. win10系统无法切换输入法无法输出中文
  17. python动作识别代码_基于openpose的动作识别(二)
  18. php同子域单点登录,SSO 单点登录总结(PHP)(示例代码)
  19. java继承链中方法调用优先级.顺序:this.show(object)super.show(object)this.show((super)object)super.show((super))
  20. 致远SPM解决方案之人力资源管理

热门文章

  1. Google分析用户页面滚动深度分析jQuery插件 - jQuery Scroll Depth
  2. 【转载】怎样成为优秀的电子工程师?另外求本文出处
  3. windows下nginx+mono+fastCGI部署asp.net网站
  4. vs2008软件测试实战 1
  5. 2.15三亚,自由的一天
  6. java day02 【数据类型转换、运算符、方法入门】
  7. 丢失更新的问题产生和解决
  8. linux 开放端口
  9. The Strategy pattern
  10. 【Spring】学习SpringAOP