Python学习笔记(一)之基本元素:变量,数字和字符串

从这篇文章开始,将记录我学习python的笔记,中间难免出错,看到的时候请不要见怪,因为我还是一个小学生。




python中所有数据--布尔值,整型,浮点数,字符串,甚至大型数据结构,函数以及程序--都是以对象的形式存在的。

对象有不同的类型,类型决定了可以对它进行的操作。对象的类型还决定了它承载的数据是允许被修改的变量,还是不允许被修改的常量。

python是强类型语言,你永远无法修改一个已有对象的类型,即使它包含的数值是可变的。

python中的变量只是一个名字,名字是对对象的引用而不是对象本身。

如果想知道一个对象的类型可以使用type(thing)语句获得。

变量的组成包括:字母,数字,下划线。不过不能以数字开头。

python中的整数除法是://      栗子: 7//2     3

python中的求幂运算是:**     栗子: 3**4    81

注意点:整数0不能最为前缀放在其他数字面前,否则会出现报错

```

>>> 06  

File "", line 1

06

^

SyntaxError: invalid token

```


有关基数:再python中整数默认使用十进制,不过你还可以使用其他三种进制的数字

1:0b或0B代表二进制(以2为底)

2:0o或0O代表八进制(以8为底)

3:0x或0X代表十六进制(以16为底)


有关类型转换:

可以使用int()将python的其他数据类型转换为整型

可以将布尔值转化为整型:int(True),int(False)

可以将浮点型转化为整型:int(12.3)

可以将包含正负号和数字的字符串转化为整型: int(‘+12’)

但是init函数不能接受包含小数点和指数的字符串:int('12.3')或int(1.0e4')

再python3.5中,long类型已经不再存在,而init类型变为可以存储任意大小的整数,甚至超过64位。


可以使用float()函数将其他类型转换位浮点型:

可以将整型转化为浮点型:float(2)

可以将布尔型转化为浮点型:float(True),float(False)

可以将包含有效浮点数(数字,正负号,小数点,指数及指数的前缀)的字符串转换成真正的浮点型数字:float('98.6'),float('-1.5'),float('1.0e4')


Python的字符串是不可变的,你无法对原字符串进行修改,但可以将字符串的一部分复制到新的字符串。

将一系列字符用单引号或双引号括起来就可以创建字符串。

可以使用三个单引号''',或三个双引号"""来创建多行的字符串。

在三元引号包括的字符串中,每行的换行符以及行首或行末的空格都会保留。

可以使用str()函数将其他数据类型转换成字符串:

栗子:str(98.6),str(1.0e4),str(True)


使用 \ 进行转义:

换行符:\n

制表符:\t

单引号和双引号表示:\' , \"。在字符串由相同类型的引号包括的时候经常使用

如果想输出一个反斜线 \ ,连续输入两次 \\ 即可。


使用 + 进行字符串的拼接:

在python中可以使用 + 进行字符串的拼接: ”string"+"string"

当我们调用print()时候,python会在各个参数之间自动添加空格,并在结尾添加换行符


使用 * 进行字符串的复制:

使用符号 * 可以进行字符串的复制: start="na"*5+'\n'


使用 [ ]  提取字符串:

在字符串的后面添加[ ],并在括号里指定偏移量可以提取该位置的单个字符。第一个字符的偏移量是0,字符的偏移量也可以用 -1表示,从右到左依次是-2,-3等等。

由于字符串是不可变的,因此无法直接插入字符或改变指定位置的字符,为了改变字符串,我们可以组合使用一些字符串函数,例如replace(),以及分片操作。

栗子:name='Henny'    name.replace('H','P')     'P'+name[1:]


使用[start:end:step]分片:

分片用来获取子字符串,我们用一对方括号[ ],起始偏移量start,终止偏移量end以及可选的步长step来定义一个分片。分片得到的字符串包括从start开始到end之前的全部字符。

[ : ] 提取从开始到结尾的整个字符

[start:] 从start提取到结尾

[ :end ] 从开头提取到end-1

[ start : end ] 从start提取到end-1

[ start:end:step ] 从start提取到end-1,每step个字符提取一个

注意:偏移量从左至右从0开始,从右至左从-1开始。


使用len()获取长度:

len()函数可以计算字符串中包含的字符数


使分割:用split()分割

调用字符串函数的格式: string.function(arguments)

函数split()可以基于分隔符将字符串分割成由若干个子串组成的列表。

如果不指定分隔符,那么split()将默认使用空白字符--换行符,空格,制表符。

栗子: todos='get,get mask,give cat vitamins'   todos.split(',')


使用join()函数进行合并

join()函数将包含若干个子串的列表组成的一个完整的字符串。join()的调用顺序:先指定连接符,再指定列表:string.join(list)

栗子:crp_to=['nihbh','fyrdhn','ytwabsch']    ','.join(crp_to)


判断某个字符串是否以all开头:string.startwith('all')

判断某个字符串是否以all结尾:string.endwith('all')

判断某个字符串中all第一次出现的位置(偏移量):string.find('all')

判断某个字符串中all最后一次出现的位置:string.rfind('all')

判断某个字符串中all出现了多少次:string.count('all')

判断某个字符串是否都是字母或数字:string.isalnum()


使用replace()函数进行替换:

函数replace()可以实现简单的替换,需要传入的参数有:需要被替换的子串,用于替换的新子串,以及需要替换多少处。最后一个参数省略,则只替换第一处。

样式:string.replace('oldstring','newstring',number)


大小写与对齐方式:

设置字符串:setup='a  duck  goes in a bar ...'

将字符串收尾的 . 都删除掉:setup.strip('.')

将字符串的首字母大写:setup.capitalize()

将字符串的所有单词的开头都变成大写:setup.title()

将所有字母都变成大写:setup.upper()

将所有字母都变成小写:setup.lower()

将所有字母的大小写转换:setup.swapcase()

我们假设栗子中的字符串被编排在指定长度(这里是30个字符)的空间里:

在30个字符中居中:setup.center(30)

左对齐:setup.ljust(30)

右对齐:setup.rjust(30)

注意:由于字符串是不可变的,这些操作并没有真正的改变字符串的值,他们只是获得字符串的值,然后进行某些操作之后将结果赋予新的一个字符串。

注:本文内容来自《Python语言及其应用》欢迎购买原书阅读

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容