04_Python的数据类型1数值和字符串_Python编程之路

上一节我们通过一个helloworld程序学习python的一些简单操作,还有输入与输出

这节我们来讲Python的数据类型与变量的操作

Python的交互器

在讲这个之前,我要先讲一下python的交互器,之后讲解代码(除了做简单项目)都在交互器上进行,这样可能比较直接一些,有利于刚接触python的人理解代码

python在命令行自带一个交互器,我们可以直接通过输入python进入python的交互器

但是他的功能并不是很齐全,比如代码着色,和变量的提示,以及操作shell命令的功能都没有

所以我在这推荐一款更强大的Python“交互器Shell”,IPython

IPython 是一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数。

例如可以直接在ipython中直接使用Linux命令,如 ls  命令查看文件夹下的文件

安装ipython只需要执行以下命令即可

pip install ipython

 使用ipython只需要输入ipython即可

Python中操作数字

在交互器中,Python语言可以和自然语言一样处理数学的计算,例如

In [1]: 4+4
Out[1]: 8

In [2]: 100 - 6*3
Out[2]: 82

In [3]: (100 - 5*6) / 10
Out[3]: 7.0

In [4]: 10 / 3
Out[4]: 3.3333333333333335

  注意在Python中进行除法时只返回浮点数,也就是带小数点的数

整型 int

像4, 45, 255, 2455这些都是整型数字

浮点数 float

像5.0,3.1415,5.733都是浮点数

前面讲了进行除法时使用" / "只会返回一个浮点数

如果你想返回一个整数,那么你就可以使用" // "操作符

In [5]: 20 / 3
Out[5]: 6.666666666666667

In [6]: 20 // 3
Out[6]: 6

取余操作符" % "

例如

In [8]: 30 % 4    #30取4的余数
Out[8]: 2

In [9]: 4 * 7 + 2
Out[9]: 30

  

次方操作符 " ** "

例如

In [10]: 4 ** 2    #4的二次方
Out[10]: 16

In [11]: 2 * 4    #2的四次方
Out[11]: 8

  

注意:进行负数的次方运算时最好把负数加上括号

In [27]: -2**4
Out[27]: -16

In [28]: (-2)**4
Out[28]: 16

  

赋值符号 " = "

把一个数值赋给一个变量

例如

In [14]: height = 12.5    #长

In [15]: width = 5    #宽

In [16]: area = height * width  #面积

In [17]: print(area)
62.5

  

需要注意的是一个变量必须要在使用时对其赋初值定义


混合数据类型的计算

在进行混合类型的计算时,Python的解释器总是会在整数与浮点数的计算中返回一份浮点数

In [19]: 7 * 8 - 2.00
Out[19]: 54.0

  

操作浮点数的精度 "round"

round()方法需要传入两个参数,第一个是要操作的数字,第二个是浮点数的精度

例如

In [25]: PAI = 3.1415926535 

In [26]: round(PAI, 2)
Out[26]: 3.14

  

Python中操作字符串(string)

在Python中,字符串是最常用的数据类型,当然数值也不例外,

申明一个字符串可以用 ‘  ‘ 和 ‘‘  ‘‘

在输出单引号和双引号时我们可以使用转义符号"  \  "

例如

In [29]: ‘hello world‘
Out[29]: ‘hello world‘

In [30]: "hello world"
Out[30]: ‘hello world‘

In [31]: " PHP是世界上\"最好\"的语言 "
Out[31]: ‘ PHP是世界上"最好"的语言 ‘

  

在这里我们稍微扩展以下,常见的转义字符

转义字符 描述
\(在行尾时) 续行符
\\ 反斜杠符号
\‘ 单引号
\" 双引号
\a 响铃
\b 退格(Backspace)
\e 转义
\000
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数,yy代表的字符,例如:\o12代表换行
\xyy 十六进制数,yy代表的字符,例如:\x0a代表换行
\other 其它的字符以普通格式输出

注意:python的print()方法是默认换行输出的,只有使用输出方法时,\n才会生效,例如

In [4]: talk = "你好\nPython"

In [5]: talk
Out[5]: ‘你好\nPython‘

In [6]: print(talk)
你好
Python

  

当然如果你不这么麻烦,想直接输入一段话,不考虑转义,这是你就可以使用原始字符串,把要输出的字符串加上引号,然后在前面加上 r 即可

例如

输出一段路径时

In [7]: print("D:\notepad++\bin")
D:
otepad+in

In [8]: print(r"D:\notepad++\bin")
D:\notepad++\bin

  

当然除了上面的方法,还有一个就是用python的格式化输出

格式化输出 ‘‘‘   ....   ‘‘‘

如果想要格式化输出一行或多行文本时,就可以用 三引号 来输出

例如输出一个人的基本信息

In [9]: info = ‘‘‘ name: %s   age: %d   ‘‘‘%("susmote",18)

In [10]: print(info)
 name: susmote   age: 18

  

多行输出时

In [12]: print(‘‘‘    ...: name : %s
    ...: age  : %d
    ...: ‘‘‘%("susmote",18) )
name : susmote
age  : 18

  

字符串的连接输出

python作为一门弱类型语言,你可以花式操作字符串

例如要重复输出一段字符串时,其他语言只能通过循环去完成,而python除了循环,你还可以对他进行数学操作,例如

In [15]: ‘h‘ + ‘e‘ + 2*‘l‘ + ‘o‘
Out[15]: ‘hello‘

  

当然你也可以不用加号

In [19]: ‘h‘ ‘e‘ +2*‘l‘+ ‘o‘
Out[19]: ‘hello‘

  

注意,不能把一个变量跟字符串直接相连(不加“ + ”号)

字符串索引切片

字符串,通俗来讲也就用字符连接成的串,那么我们怎么能够获取其中包含的字符呢,这时我们就要用到索引(index)了,只需要在字符串后面加‘‘ [ index ] ‘‘,index代表你要获取的字符顺序

注意索引都是从0开始的,这个目前市场上主流语言都适用

例如

In [30]: name = "susmote"

In [31]: name[0]
Out[31]: ‘s‘

In [33]: name[1]
Out[33]: ‘u‘

  

除了用正序索引,我们也可以使用倒序索引,用" - "开始

In [34]: name[-1]  相当于name[6]
Out[34]: ‘e‘

In [35]: name[-2]  相当于name[5]
Out[35]: ‘t‘

  

字符串的切片

用上面的方法我们每次最多也只能获取一个字符,但是如果我们想获取多个字符该怎么办呢,这时就要用到切片了

切片操作,只需要在字符串后加   [ index1 : index2 ],注意两个index之间用" : "(分号)隔开,index1代表开始的字符,index2代表结束的字符

注意切片是 包头不包尾的

例如以下例子

In [43]: name = ‘susmote‘

In [44]: name[0:1]
Out[44]: ‘s‘

In [45]: name[0:2]
Out[45]: ‘su‘

In [46]: name[0:6]
Out[46]: ‘susmot‘

In [47]: name[0:7]
Out[47]: ‘susmote‘

  

也可以不加索引(开始的索引和结束的索引),默认index1(开始字符的索引)是0,index2(结束字符的索引)是最后的字符索引加1

例如

In [49]: name[:]
Out[49]: ‘susmote‘

In [50]: name[0:]
Out[50]: ‘susmote‘

In [51]: name[:7]
Out[51]: ‘susmote‘

  

切片也可以用" - "  倒序索引

但是切片是按照正序来操作的,所以针对复杂的切片还是要仔细分析索引

In [72]: name[-1:]
Out[72]: ‘e‘

In [73]: name[:-1]
Out[73]: ‘susmot‘

In [74]: name[-7:-1]
Out[74]: ‘susmot‘

  

索引的结构如下

+---+---+---+---+---+---+---+
| s | u | s | m | o | t | e |
+---+---+---+---+---+---+---+
 0   1  2  3  4   5   6
 -6   -5 -4  -3  -2  -1

  

如果开始字符的索引超出了字符的长度,那么什么都不会输出

如果结束字符的索引超出了字符的长度,那么只会输出开始的字符到整个字符串的最后一个字符索引

In [75]: name[40:]
Out[75]: ‘‘

In [76]: name[3:40]
Out[76]: ‘mote‘

  

注意字符串类型是不可以被改变的,你不能对索引对象和切片对象进行赋值

获取字符串的长度

获取的字符串的长度我们可以通过 len() 方法来获得

In [79]: well = "susmote very smart"

In [80]: len(well)
Out[80]: 18

  

数值和字符串简单的我们就讲到这里,下一节在介绍python其他的数据类型

原文地址:https://www.cnblogs.com/susmote/p/8684770.html

时间: 2024-08-01 09:20:48

04_Python的数据类型1数值和字符串_Python编程之路的相关文章

03-第一个脚本程序以及输入输出_Python编程之路

上节课已经教大家安装了Python的解释器,那么这节课我们就可以正式来写代码了 说明:在下面的代码演示中,我将大部分使用python交互器演示代码的输入输出,注意">>>"后面代表的是输入的代码,没有其他的标志代表的是输出 按照以往的惯例,首先我们还是写一个Hello world 程序 # -*- coding :utf-8 -*- #Author = susmote print("hello world") 按照以上的程序,我们简单做一个解释 字

13_Python数据类型字符串加强_Python编程之路

前面已经跟大家讲了python的数据类型,但是没有深入去讲,这一节我们深入了解python数据类型的使用 列表数据类型有很多方法,我们在这里一一跟大家介绍 1.append 方法append用于将一个对象附加到列表末尾. 例如以下代码 In [1]: my_list = [1, 2, 3, 4] In [2]: my_list.append(5) In [3]: my_list Out[3]: [1, 2, 3, 4, 5] 注意append和其他方法一样,只修改列表,不返回值 2.clear

07_Python的控制判断循环语句1(if判断for循环)_Python编程之路

Python的数据类型在前几节我们都简单的一一介绍了,接下来我们就要讲到Python的控制判断循环语句 在现实编程中,我们往往要利用计算机帮我们做大量重复计算的工作,在这样的情况下,需要机器能对某个条件进行判断,或是对某个行为进行重复操作 这时我们就必须要知道如何去编写循环判断语句 if... elif... else if也就是如果的意思,后面需要加一个判断条件,如果判断条件为真,则执行if下的操作,如果为假则跳过操作 注意在每个判断条件后面要加上冒号,且if下面的语句要注意缩进 In [1]

02-Python的下载和安装_Python编程之路

原文发布在特克斯博客www.susmote.com 之前给大家讲了关于python的背景知识,还有Python的优点和缺点,相信通过之前的介绍很多人已经清楚自己到底要不要选择学习Python,如果已经很有兴趣了,那么你就可以自己查看一些有关Python的官方文档,或是买本书啃啃,如果你暂时还没什么兴趣,也不要着急放弃,尝试着多看几节课,如果实在没兴趣也实属正常,Python也不是最好的语言 Python的下载 Python的下载很简单,直接进入官网https://www.python.org/

12_Python的(匿名函数)Lambda表达式_Python编程之路

Python作为一门高级语言,与很多编程语言一样都具有匿名函数这一特征 匿名函数,也就Lambda表达式,通俗来讲就是不用命名的方法,直接定义,直接用即可 创建匿名函数需要用到Lambda关键字,下面我们通过一个简单的匿名函数的创建熟悉匿名函数 lambda a,b : a + b 这个表达式返回的值是a加上b的值,他需要传入两个参数,也就是a,b,同时还需要一个表达式,这样才能构成一个完整的匿名函数 通过代码完善这一部分的理解 In [1]: func = lambda a,b : a+b I

15_Python模块化编程_Python编程之路

之前跟大家讲的是一些python的数据基础,从这篇文章开始,我们开始正式学习python的模块化编程 下面我们解释一下什么叫做模块 之前已经讲过怎么去定义一个方法,如果你是用python交互器(自带交互器,或者是ipython)来学习定义方法的话,你定义完方法后,然后退出交互器,然后你再来使用这个方法,很显然,是不会成功调用的,这是因为python交互器在你退出后,会清空内存,所有定义的变量和方法都会被清理 如果你想把定义好的方法用在你的新脚本文件中,这样就必须引入一种模块机制 你可以把你写好的

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2--python文件类型.变量.数值.字符串.元组.列表.字典 一.Python文件类型 1.源代码 python源代码文件以.py为扩展名,由pyton程序解释,不需要编译 [[email protected] day01]# vim 1.py #!/usr/bin/python        print 'hello world!' [[email protected] day01]# python 1.py hello world! 2.字节代码 Python源码文件

VBA学习---字符串型数值和数值型字符串相互转换

一.数值转化为字符串函数Str.CStr Str函数将数值转换为字符串,即返回一个代表一个数值的字符串,其语法为: Str(number) CStr函数将数值表达式转换为字符串,其语法为: CStr(mynumberExpression)     注意:当一个数值转换成字符串时,总会在其前面保留一个空位来表示正负,即字符串的第一位一定是空格或正负号,Str将英文句号(.)作为有效的小数点.          演示代码: Sub StrTranfomationDemo() Dim myDouble

Puppet数据类型中[数值类型,数组的使用] (十四)

本文主要写puppet的数据类型中的数值类型和数组的使用,博主puppet为3.8版本,puppet数组的追加功能测试没有成功,官网也没有给出示例,确定是否已经优化或者取消.官网数据类型连接地址 https://docs.puppet.com/puppet/3.8/lang_datatypes.html puppet的数据类型 目前puppet支持字符串类型.数字.数组.哈希.布尔型.undef和正则表达式. 一.字符串类型 定义字符串需要以双引号("")或单引号('')进行声明,在p