Python基础(一)

Python基础

一、数值类型

整型(int):整型对应我们现实世界的整数,比如1,2,100

浮点型(float):浮点型对应现实世界的小数,比如100.12,会计数据一般都是保留两位小数的浮点型。

布尔值(bool):只有True和False两个值,可以理解布尔值是特殊的整型(True=1,False=0)。布尔值一般产生于成员运算符、比较运算符、逻辑运算符。

复数类型 :科学计数法,例如1+2j

二、Python支持的运算符

1、算术运算符
主要有如下:+(加) -(减) *(乘) /(除) %(除余) **(幂) //(除整)

2、赋值运算符
在算数运算符的后面加上等号,就是赋值运算符了。

= += -= *= /= %= **= //=

赋值运算符的意思是边计算边赋值,比如a+=1等效于a=a+1,左边的新值=左边的原始值+右边

3、比较运算符
跟数学里的>(大于号)、<(小于号)类似,Python再多拓展了几种比较运算符。

==(比较是否相等)!=(是否不相等) >(是否大于)<(是否小于)>=(是否大于等于)<=(是否小于等于)

4、逻辑运算符
跟语文中的“并且”和“或者”有相似的含义,逻辑运算符有三种:and(与) or(或) not(非)

5、成员运算符
成员运算符用来判断某个成员是否在一个序列里面,返回值是True或False:

in(在序列里) not in (不在序列里)

6、身份运算符
身份运算符用来判断两个标识符是否指向同一个对象,返回值是True或False:is(是同一个对象) is not (不是同一个对象)

举个例子:a=10 b=20 c=a a和b不是同一个对象,a和c是同一个对象。

三、序列类型

1、字符串及常用操作

a='abcdef'

字符串索引(适用于列表)

变量[头下标:尾下标]
索引值以 0 为开始值,-1 为从末尾的开始位置。
在这里插入图片描述
注意事项“”

  1. 反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
  2. 字符串可以用+运算符连接在一起,用*运算符重复。
  3. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
  4. Python中的字符串不能改变。

字符串切片
1、没有步长的简单切片
语法格式 S[start:stop] (start表示的是字符串要截取的开始下标,stop 表示终止的字符串结束的前一个位置。)

>>>s = 'hello world'
>>>s[0], s[-2]
('h', 'l')
>>>s[1:3], s[1:], s[:-1]
('el', 'ello world', 'hello worl')
>>>

2.有步长的切片方式
语法格式:S[start:stop:stride] (start表示的是字符串要截取的开始下标,stop 表示终止的字符串结束的前一个位置,stride表示的是间隔的取出字符串。)

>>>s = 'abcdefghijklmnop'
>>>s[1:10:2]              #从下标1-9的字符串中每2个字符取一个
'bdfhj'
>>>s[::2]                     
'acegikmo'
>>>s[::-1]                #逆向
'ponmlkjihgfedcba'
>>>s[::-2]              #逆向每两个字符取一个
'pnljhfdb'

常见字符串操作函数
count(str, start= 0,end=len(string)): 统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。

  • sub – 搜索的子字符串
  • start – 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
  • end --字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。

返回值为子字符串在字符串中出现的次数。

>>> a='dsasdfsfss'
>>> a.count('s')
5
>>> a.count('s',1,4)
2

index(str, beg=0, end=len(string)): 索引子字符串str在字符串中的位置,若不在则返回一个错误。参数同上。

>>> a.index('a')
2
>>> a.index('v')
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    a.index('v')
ValueError: substring not found

find(str, beg=0, end=len(string)): 检测字符串中是否包含子字符串 str。如果包含子字符串返回开始的索引值,否则返回-1。参数同上。

>>> a.find('f')
5
>>> a.find('q')
-1

isdigit(): 判断是否都为数字。返回True后False。
isalpha(): 判断是否都为字符串。返回True后False。
startwith(str): 判断是否以str开头的。返回True后False。
endswith(str): 判断是否以str结尾的。返回True后False。
islower(): 判断字符是否都是小写。返回True后False。
isupper(): 判断字符是否都是大写。返回True后False。
lower(): 将字符串内的字符都转换为小写。
upper(): 将字符串内的字符都转换为大写。

str.strip(): 删除字符串两边的指定字符,括号的写入指定字符,默认为空格
str.lstrip(): 删除字符串左边的指定字符,括号的写入指定字符,默认空格
str.rstrip(): 删除字符串右边的指定字符,括号的写入指定字符,默认空格

>>> a='    hello    '
>>> b=a.strip()
>>> print(b)
hello
>>> a='   hello   '
>>> b=a.lstrip()
>>> print(b)
hello      #右边空格可能看的不是很明显
>>> a='   hello   '
>>> b=a.rstrip()
>>> print(b)
   hello

capitalize(): 将字符串的收个字母大写。
title(): 将字符串的每个单词的首字母大写。
split(str="", num=string.count(str)): 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。

  • str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
  • num – 分割次数。默认为 -1, 即分隔所有。
    返回分割后的字符串列表。
>>> a='a,r,f,g,c,h,'
>>> a.split(',')
['a', 'r', 'f', 'g', 'c', 'h', '']

replace(old, new[, max]): 把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
str.join(sequence): 用于将序列中的元素以指定的字符连接生成一个新的字符串。sequence – 要连接的元素序列。

>>> ' '.join(a)         #将a中的字符串用空格连接组成一个新的字符串。
'a , r , f , g , c , h ,'

format(): 字符串格式化函数。

字符串转义列表如下:

转义符功能
\Backslash () 反斜杠
Single quote (‘) 单引号
"Double quote (”) 双引号
\aASCII Bell (BEL) 响铃符
\bASCII Backspace (BS) 退格符
\fASCII Formfeed (FF) 进纸符
\nASCII Linefeed (LF) 换行符
\N{name}Unicode 数据库中的字符名,其中 name 就是它的名字(Unicode only)
\rASCIICarriage Return (CR) 回车符
\tASCIIHorizontal Tab (TAB) 水平制表符
\uxxxx值为 16 位十六进制值 xxxx 的字符(Unicode only)
\Uxxxxxxxx值为 32 位十六进制值 xxxx 的字符(Unicode only)
\vASCII Vertical Tab (VT) 垂直制表符
\ooo值为八进制值 ooo 的字符
\xhh值为十六进制数 hh 的字符

字符串内置函数大全

2、元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组中只包含一个元素时,需要在元素后面添加逗号
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合。

3、列表

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型

列表的常用函数如下:
1、增
append(obj):在列表末尾添加新的对象

>>> a=[1,4,'a']
>>> a.append('b')
>>> a
[1, 4, 'a', 'b']

insert(index, obj):将对象obj插入列表的指定位置index(根据索引值进行插入)

>>> a.insert(0,'2')
>>> a
['2', 1, 4, 'a', 'b']

extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

>>> a.extend((1,2))             #列表与元组的输出结果一致
>>> a
['2', 1, 4, 'a', 'b', 1, 2]
>>> a.extend({1:'1',2:'2'})
>>> a
['2', 1, 4, 'a', 'b', 1, 2, 1, 2]

2、删
pop([index=-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

>>> a.pop(1)                           #删除列表a中的的数字1   从左往右依次删除
1
>>> a
['2', 4, 'a', 'b', 1, 2, 1, 2]
>>> a.pop()                         #默认删除列表a中的最后一个元素
2
>>> a
['2', 4, 'a', 'b', 1, 2, 1]

remove(obj):移除列表中某个值的第一个匹配项

>>> a.remove(1)
>>> a
['2', 4, 'a', 'b', 2, 1]
>>> a.remove(a[2])
>>> a
['2', 4, 'b', 2, 1]

clear():清空整个列表。
3、改 直接给指定元素赋值。
4、查
index(obj,[start,[stop]]):查询列表中obj的所在位置,start表示索引的起始位置,stop表示终止位置,遵循左闭右开的原则( []表示参数可有可无)。

>>> a = [1,3,4,2,4,1,43,0,4,1,4,1,41,2,32]
>>> a.index(1)
0
>>> a.index(1,2)
5
>>> a.index(1,2,10)
5

count():查询元素出现的次数。
5、其他方法
reverse():反向列表中元素。不会产生新的列表

>>> a=[1,5,3,5,4,6]
>>> a.reverse()
>>> a
[6, 4, 5, 3, 5, 1]

sort(cmp=None, key=None, reverse=False):函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。只能对同类型排序。reverse表示排序规则,reverse = True 降序, reverse = False 升序(默认)。

>>> a.sort()
>>> a
[1, 3, 4, 5, 5, 6]
>>> a.sort(reverse=True)
>>> a
[6, 5, 5, 4, 3, 1]

版权声明:本文为xu1979185008原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。