Python基础总结

it2022-05-20  71

Python总结目录:

  1.python简介

  2.编译型和解释型

  3.python三种运行方式

  4.变量和数据类型

  5.运算符

  6.String字符串常用功能

  7.list列表常见操作  

  8.dict字典常见操作

 

 

1.Python的简介

  简介:Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum(龟叔)于1989年发明, 第一个公开发行版发行于1991年。

  诞生:1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序, 即Python(TIOBE编程语言排行榜)

  作用:开发网站、后台服务、工具脚本、爬虫、数据分析、人工智能等

  特点:

    ○  优点:简单(定位:简单、优雅、明确)、代码量少(人生苦短 我用python)、功能强大(大量的第三方库)。

    ○  缺点:运行速度慢、代码不能加密。

    ○  补充:Python是一门解释型语言,类似于PHP,不同于C、C++等编译型语言

 

 

2.编译型和解释型语言

编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 

而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的. 

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

 

编译型优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。(运行速度快)缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。(开发效率低,不能跨平台)

解释型优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。(开发效率高,可以跨平台)

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。(运行速度慢)

 

 

3.Python三种运行方式

1.Python交互模式(解释器)

执行 Python 命令,就进行 Python 交互模式,提示符 >>>,输入 exit() 可退出交互模式

C:\Users\lenovo>python Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> name = 'jiangxinheng' >>> name 'jiangxinheng' >>> exit() C:\Users\lenovo> 解释器

好处:一下就能得到结果。

坏处:没办法保存,下次还想运行的时候,还得再敲一遍,不适合开发。

 

2.使用文本编辑器(脚本)

建议使用 sublime(ctrl+shift+b) 或者 notepad++,不要使用windows自带的记事本(会自动在文件的开头添加特殊字符,结果可能会导致错误)

a、sublime 创建Python脚本,以 .py 结尾

# -*- coding:utf-8 -*- # 输出,使用print() print('Hello Python') name = 'jxh' print(name) 脚本

  注意:如果脚本有中文,可能会报错,需要在文件的第一行添加一个编码注释

b、运行脚本

  1.cmd运行脚本 ---》python  hello.py

  2.sublime脚本中直接运行----》ctrl+shift+b  注:sublime中没有input()输入功能

 

3.使用IDE工具

  PyCharm,JetBrain公司出口

 

 

 

4.变量和数据类型

1.变量

1.变量的概念:

1.程序可操作的储存区名称 2.程序运行时,储存区中可以改变的数据 3.每个变量都有特定的类型 例如:一栋教学楼当做内存的话,教室名相当于变量名,其教室里面的学生(内部储存的内容)就是变量值 变量的概念

2.变量的作用和定义:

# 作用:将数据存放到内存 # 1.定义 变量名= 初始值 # (初始值的实际类型决定变量的数据类型) name = '蒋新衡' # 2.查看变量类型:type() print(type(name)) # <class 'str'> # 3.查看变量名内存地址:id() print(id(name)) # 1989180256 所代表的的是它的内存地址 变量作用和定义及常用功能

3.变量的调用:

a=1 b=6 c=a+b # 调用a和b的值相加赋予给c print(c) # 7 # 注意:调用变量的时候,变量事先必须定义,否则无用(会报错) 变量的调用及注意事项

4.变量的命名规范:

# 1. 必须由字母,数字,下划线组成; # 2. 不得以数字开头(但由于python中单下划线("_")和双下划线("__")名称的变量有特殊用途,因此不推荐自定义单下划线和双下划线开头的变量) ; # 3. 变量名尽可能见名知意:大驼峰(首字母大写)、小驼峰; # 4. 不能是Python的关键字 变量命名规范

5.Python关键字:

import keyword # 导入Python中所有的关键字库 print(keyword.kwlist) # 输出所有关键字--以下python所有关键字 ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] python关键字

6.常量

# 概述:常量即不变的量,比如,pi,3.1415926,或者程序运行过程中不可以更改的量 # 定义:一般常量的定义全部用大写 PI=3.14 # 定义常量 常量概述

 

2.数据类型

Python基本的数据类型:整型(int)、浮点型(float)、字符串(str)、布尔值(bool)、复数(complex)、空值(None)等...

例子:

'''数据类型:整型、浮点型、字符串、布尔、空值、复数 等 ''' # 整型int a = 12345 print(a, type(a)) # 12345 <class 'int'> # 浮点型float b = 123.5 print(b, type(b)) # 123.5 <class 'float'> # 科学计数法E/e (浮点型) print(314E3) # 314000.0 print(314E-3) # 0.314 #  字符串str,定义字符串可以使用单引号或双引号(推荐用单引号) c = 'aaa' print(c, type(c)) # aaa <class 'str'> #  字符串有多行时可以使用三对单引号,表示多行内容,结果按照指定格式输出 info = ''' welcom to gaochenjiaoyu ''' print(info, type(info)) #  布尔bool,取值:True、False f = True print(f, type(f)) # True <class 'bool'> g = 5 < 3 print(g) # False print(5 + True) # True表示1,False表示0 #  空值 NoneType h = None print(h) # None # 复数complex aa = 1 + 1.5j print(aa, type(aa)) # (1+1.5j) <class 'complex'> print(aa.real) # 该复数的实部 1.0 print(aa.imag) # 该复数的虚部 1.5 print(aa.conjugate()) # 该复数的共轭复数 (1-1.5j) 数据类型

 

 

 

5.Python运算符

 

 

 

 

 

 

 

6.字符串常用功能

 

1.字符串切片([]以及切片([::])

# 注意事项:空格也算一个字符 # 元素查找:从左往右数从0开始 或者 从右往左数从-1开始 # 切片:用来截取指定索引范围的内容(字符串、集合、列表等) name = 'love you' print(len(name)) # 8 # 索引 print(name[0]) # 查找多个元素 print(name[5], name[len(name) - 1], name[-1]) # 获取指定值,-1代表的是倒数第一位的值 print(name[1:4]) # 获取索引为[1,2,3]的字符,不包括4 ove print(name[:4]) # 开始位置不写默认为 0 love print(name[2:]) # 结束位置不写默认值为 最后一位 ve you print(name[1:5:2]) # 索引为[1,5]的字符,每隔2位取值,包括第一位,1,3 oe print(name[::2]) # 所有的字符,每隔2位取值--0,2,4,6 lv o print(name[::-1]) # 从负数取值 uoy evol 字符串切片

 

2.字符串大小写的转换

str.lower():转小写str.upper():转大写str.swapcase():大小写对换str.capitalize():字符串首为大写,其余小写str.title():以分割符法为标记,首字母大写,其余为小写 aa = 'I like Python' print(aa.lower()) # 将所有大写字符转换为小写字符 i like python print(aa.upper()) # 将所有小写字符转换为大写字符 I LIKE PYTHON print(aa.swapcase()) # 大小写对换 i LIKE pYTHON print(aa.capitalize()) # #将字符串的第一个字符转换为大写,其他字母小写 I like python print(aa.title()) # 返回标题化的字符串,每个单词的首字母大写 I Like Python 例子 #不区分大小写 input_str="AbcA" aa=input("请输入") if aa.lower()==input_str.lower():#都改为小写做为比较 print("输入正确") else: print("输入错误") 实现验证码功能

 

3.字符串格式输出对其

str.center() 返回一个原字符串居中,并使用参数填充 with 长度

str.ljust() 左居中

str.rjust() 右居中

str.zfill() 右居中,以0填充长度,且只有一个参数

# 字符串格式输出对齐 string = 'Hello World' print(len(string)) # 11 print(string.center(15, '*')) # 返回一个原字符居中,并使用‘*’填充长度 width的新字符 **Hello World** print(string.ljust(15, '*')) # 左对齐 Hello World**** print(string.rjust(15, '*')) # 右对齐 ****Hello World print(string.zfill(15)) # 右对齐,以0填充,只有一个参数 0000Hello World 例子

 

4.去除字符

str.lstrip()  删除字符串左边的所有空格,可指定字符参数

str.rstrip()    删除字符串右边的所有空格

str.strip()   删除字符串左右两边空格,类似于java中的trim

# 删除指定字符串 string = '***Hello World***' print(string.lstrip('*')) # Hello World** print(string.rstrip('*')) # **Hello World print(string.strip('*')) # Hello World 例子

 

5.拆分和连接字符串

str.partition(str) 将字符串str分成3元素的元组(str前面,str,str后面)

str.rpartition(str)   类似于parttion()方法,不过是从右边开始查找

string.split(str="",num) 以str为分隔符拆分string,如果num有指定值,则仅分隔num+1个子字符串,str默认包含" \r,\t,\n和空格"string.splitlines()  按照行('\r','\n','\r\n')分隔,返回一个包含各行作为元素的列表string.join(seq)  以string作为分隔符,将seq中所有的元素(的字符串表示)合并成为一个新的字符串 # join str = 'hello world' print('-'.join(str)) # h-e-l-l-o- -w-o-r-l-d # split name = 'jiang xin' print(name.split('n')) # ['jia', 'g xi', ''] print(name.split('n', 1)) # ['jia', 'g xin'] print(name.splitlines()) # ['jiang xin'] # partition print(name.partition('n')) # ('jia', 'n', 'g xin') print(name.rpartition('n')) # ('jiang xi', 'n', '') 例子

 

6.查找和替换

string.find(str,start=0,end=len(string))       检测str是否包含在string中,如果存在则返回元素的第一次索引位置。

string.rfind(str,start=0,end=len(string))            类似于find(),不过是从右边开始

string.index(str,start=0,end=len(string))       跟find()方法类似,如果str不在string中则会报错string.rindex(str,start=0,end=len(string))   类似于index(),不过是从右边开始string.replace(old_str,new_str,num=string.count(old))  把string中的old_str替换成new_str,如果num指定,则替换不超过num次string.startswith(str)  检查字符串是否以str开头,是则返回Truestring.endswith(str)  检查字符串是否以str结束,是则返回True # 字符串搜索定位与替换 string = 'Hello World' print(string.find('l')) # 2 print(string.rfind('l')) # 从右开始 9 print(string.find('e', 2, 8)) # -1 print(string.index('l')) # 2 print(string.replace('l', 'L')) # 将所有的l转换为L HeLLo WorLd print(string.replace('l', 'L', 1)) # 从左往右,替换一个 'l' HeLlo World print(string.startswith('jxh')) # 判断字符串是否以‘jxh’开头 False print(string.endswith('ld')) # 判断字符串是否以 ‘ld’结尾 True 查找和替换

 

7.判断类型(具体看例子)

# 字符串条件判断 string = 'hello world' print(string.islower()) # 是否全是小写,当全是小写和数字一起时候,也判断为True True print(string.isupper()) # 是否全是大写,当全是大写和数字一起时候,也判断为True False print(string.isalnum()) # 是否全是由字母和数字组成的,不包括空格,并字符串至少有一个字符 False print(string.isalpha()) # 是否全是字母,不包括空格,并字符串至少有一个字符 False print(string.isdigit()) # 是否全是数字,不包括空格,并字符串至少有一个字符 False print(string.istitle()) # 是否所有的单词首字母都是大写,标题 False print(string.isspace()) # 判断是否全是空白字符,并字符串至少有一个字符 False 例子

 

8.计数(具体看例子)

a="Life is short,I use python" print(a.count('i'))# 返回str 在 string 里面出现的次数 #结果:2 print(a.count('i',4,8))# 在索引值为[4,8) 的范围内 str 出现的次数 #结果:1 计数

 

 

 

7.列表常见操作

序号分类关键字/函数/方法说明1   增加   列表.insert(索引,数据)  在指定位置插入数据 列表.append(数据)在末尾追加数据 列表.extend(列表2) 将列表2的数据追加到列表 2     删除     del 列表[索引] 删除指定索引的数据  列表.remove[数据]删除第一个出现的指定数据 列表.pop ()删除末尾数据 列表.pop(索引) 删除指定索引数据 列表.clear()清空列表 3 修改 列表[索引] = 数据 修改指定索引的数据 4 查找  列表[索引] 从列表中取值  列表.index(数据)获得数据第一次出现的索引位置 5   排序   列表.sort() 升序排序(按照ascii码来进行排序) 列表.sort(reverse=True) 降序排序(按照ascii码来进行排序) 列表.reverse() 逆序、反转 6  统计  len(列表) 列表长度 列表.count(数据) 数据在列表中出现的次数 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.增加:

apend()、extend()、insert()

1)append():追加元素,增加到最后 nums = [1,2,3,4] nums.append(5) print(nums) # [1,2,3,4,5] View Code 2)extend():迭代的去增加 li = ['hengyang', 'changsha', 'shaoyang'] li2 = ['shenzheng', 'shanghai'] li.extend(li2) print(li) # ['hengyang', 'changsha', 'shaoyang', 'shenzheng', 'shanghai'] View Code 3)insert():在指定位置索引前插入元素 li = ['a', 'b', 'c', 'd'] li.insert(1, [1, 2, 3, 4]) print(li) # ['a', [1, 2, 3, 4], 'b', 'c', 'd'] View Code

 

2.删除:

pop()、del、remove()、clear()

1)pop():弹出元素 li = ['a', 'b', 'c', 'd'] li.pop() # 如果没有指定索引位置,则默认是弹出最后一个元素 print(li) # ['a', 'b', 'c'] li.pop(0) # 弹出索引为0的元素 print(li) # ['b','c'] pop() 2)del:删除元素 li = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] del li[2] print(li) # ['a', 'b', 'd', 'e', 'f', 'g'] # 注:如果直接del li,将会直接把这个列表给删除,再次使用则报错:name 'li' is not defined del 3)remove():从左往右,删除第一次出现的字符 li = ['a', 'b', 'c', 'b', 'e', 'b'] li.remove('b') print(li) # ['a', 'c', 'b', 'e', 'b'] remove() 4)clear():清空列表 li = ['a', 'b', 'c', 'b', 'e', 'b'] li.clear() print(li) # [] clear()

 

3.修改:

li = ['a', 'b', 'c'] li[0] = 'aa' print(li) # ['aa', 'b', 'c'] # 利用切片 li[1:3] = ['bb', 'cc'] print(li) # ['aa', 'bb', 'cc'] 修改

 

4.查找:

列表[索引] 、index()

li = ['b', 'a', 'c', 'a', 'd'] print(li[0]) # a # index():返回a第一次出现的位置 print(li.index('a')) # 1 # 指定索引位置 print(li.index('a', 2, len(li) - 1)) # 3 查找

 

5.排序:

sort()、reverse()、切片

# 升序 li = ['b', 'a', 'c', 'e', 'd'] li.sort() # 按照ascii码来进行(升序排序--》从小到大) print(li) # ['a', 'b', 'c', 'd', 'e'] # 降序 li.sort(reverse=True) # 按照ascii码来进行(降序排序--》从大到小) print(li) # ['e', 'd', 'c', 'b', 'a'] # 逆序 li.reverse() # 逆序、反转 print(li) # ['a', 'b', 'c', 'd', 'e'] # 切片逆序 print(li[::-1]) # ['e', 'd', 'c', 'b', 'a'] 排序

 

6.统计:

len() 、count()

li = ['b', 'a', 'b', 'c'] print(len(li)) # 查看列表li的长度 4 print(li.count('b')) # 统计字符 b 在列表li中出现的次数 2 统计

 

 

 

8.字典常见操作

序号分类函数/方法描述①增加字典[key]=valuekey不存在,新增;key存在,修改字典.setdefult(key,value)key不存在,新建键值对;key存在,不会修改字典.update(字典2)将字典2的数据合并到字典1;键相同时,字典2覆盖字典1键值②删除del 字典[key]根据key,删除指定键值对,key不存在则会报错字典.pop(key)根据key,弹出指定键值对,key不存在则会报错字典.popitem()随机删除一个键值对字典.clear()清空字典③更改 字典[key]=value key不存在,新增;key存在,修改 ④  查找 字典[key] key不存在,报错;key存在,返回对应的value 字典.get(key) 可以从字典中取值,key不存在不会报错 ⑤  字典的项   字典.keys()  所有key列表 字典.values()所有value列表 字典.items() 所有(key,value)元组列表 ⑥  长度len(字典) 计算字典的长度 ⑦ 转换 str(字典) 字典转换成字符串输出 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/lovews/p/10681585.html

相关资源:python开发总结

最新回复(0)