返回顶部
首页 > 资讯 > 后端开发 > Python >Python总结:Python基础(一)
  • 215
分享到

Python总结:Python基础(一)

基础Python 2023-01-31 01:01:38 215人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

入门知识拾遗一、作用域对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用。123if 1==1:    name = 'wupeiqi'print  name下面的结论对吗?外层变量,可以被内层变量使用内层变量,无法被


入门知识拾遗

一、作用域

对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用。

1
2
3
if 1==1:
    name = 'wupeiqi'
print  name

下面的结论对吗?

外层变量,可以被内层变量使用

内层变量,无法被外层变量使用

二、三元运算

1
result = 1 if 条件 else 2

如果条件为真:result = 值1
如果条件为假:result = 值2

三、进制

  • 二进制,01

  • 八进制,01234567

  • 十进制,0123456789

  • 十六进制,0123456789ABCDE

Python基础

对于Python,一切事物都是对象,对象基于类创建

所以,以下这些值都是对象: "wupeiqi"、38、['北京', '上海', '深圳'],并且是根据不同的类生成的对象。

一、整数

如: 18、73、84

每一个整数都具备如下功能:

int

二、长整型

可能如:2147483649、9223372036854775807

每个长整型都具备如下功能:

long

三、浮点型

如:3.14、2.88

每个浮点型都具备如下功能:

float

四、字符串

如:'wupeiqi'、'alex'

每个字符串都具备如下功能:

str

注:编码;字符串的乘法;字符串和格式化

五、列表

如:[11,22,33]、['wupeiqi', 'alex']

每个列表都具备如下功能:

list

注:排序

六、元组

如:(11,22,33)、('wupeiqi', 'alex')

每个元组都具备如下功能:

tuple

七、字典

如:{'name': 'wupeiqi', 'age': 18} 、{'host': '2.2.2.2', 'port': 80]}

ps:循环时,默认循环key

每个字典都具备如下功能:

dict

1
2
3
练习:元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66 , 'k2': 小于66}

 八、set集合

set是一个无序且不重复的元素集合

set

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
练习:寻找差异
# 数据库中原有
old_dict = {
    "#1":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 },
    "#2":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }
    "#3":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }
}
 
# cmdb 新汇报的数据
new_dict = {
    "#1":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 800 },
    "#3":{ 'hostname':c1, 'cpu_count': 2, 'mem_capicity': 80 }
    "#4":{ 'hostname':c2, 'cpu_count': 2, 'mem_capicity': 80 }
}
 
需要删除:?
需要新建:?
需要更新:? 注意:无需考虑内部元素是否改变,只要原来存在,新汇报也存在,就是需要更新

demo 

九、collection系列

1、计数器(counter)

Counter是对字典类型的补充,用于追踪值的出现次数。

ps:具备字典的所有功能 + 自己的功能

1
2
3
c = Counter('abcdeabcdabcaba')
print c
输出:Counter({'a': 5, 'b': 4, 'c': 3, 'd': 2, 'e': 1})

Counter

2、有序字典(orderedDict )

orderdDict是对字典类型的补充,他记住了字典元素添加的顺序

OrderedDict

3、默认字典(defaultdict) 

学前需求:

1
2
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66 , 'k2': 小于66}

原生字典解决方法

defaultdict字典解决方法

defaultdict是对字典的类型的补充,他默认给字典的值设置了一个类型。

defaultdict

4、可命名元组(namedtuple) 

根据nametuple可以创建一个包含tuple所有功能以及其他功能的类型。

1
2
3
import collections
 
Mytuple = collections.namedtuple('Mytuple',['x', 'y', 'z'])

Mytuple

5、双向队列(deque)

一个线程安全的双向队列

deque

注:既然有双向队列,也有单项队列(先进先出 FIFO )

Queue.Queue

迭代器和生成器

一、迭代器

对于python 列表的 for 循环,他的内部原理:查看下一个元素是否存在,如果存在,则取出,如果不存在,则报异常 StopIteration。(Python内部对异常已处理)

listiterator

二、生成器

range不是生成器 和 xrange 是生成器

readlines不是生成器 和 xreadlines 是生成器

1
2
3
4
>>> print range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print xrange(10)
xrange(10)

生成器内部基于yield创建,即:对于生成器只有使用时才创建,从而不避免内存浪费

1
2
3
4
5
6
7
8
9
10
11
练习:<br>有如下列表:
    [13, 22, 6, 99, 11]
 
请按照一下规则计算:
13 22 比较,将大的值放在右侧,即:[13, 22, 6, 99, 11]
22 6 比较,将大的值放在右侧,即:[13, 6, 22, 99, 11]
22 99 比较,将大的值放在右侧,即:[13, 6, 22, 99, 11]
99 42 比较,将大的值放在右侧,即:[13, 6, 22, 11, 99,]
 
13 6 比较,将大的值放在右侧,即:[6, 13, 22, 11, 99,]
...

Demo

深浅拷贝

为什么要拷贝?

1
当进行修改时,想要保留原来的数据和修改后的数据

数字字符串 和 集合 在修改时的差异? (深浅拷贝不同的终极原因)

1
2
3
在修改数据时:
    数字字符串:在内存中新建一份数据
         集合:修改内存中的同一份数据

对于集合,如何保留其修改前和修改后的数据?

1
在内存中拷贝一份

对于集合,如何拷贝其n层元素同时拷贝?

1
深拷贝

作业

  开发一个简单的计算器程序
  *实现对加减乘除、括号优先级的解析,并实现正确运算 

 

o_Warning.png

作者:武沛齐
出处:Http://www.cnblogs.com/wupeiqi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。


--结束END--

本文标题: Python总结:Python基础(一)

本文链接: https://lsjlt.com/news/184095.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python总结:Python基础(一)
    入门知识拾遗一、作用域对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用。123if 1==1:    name = 'wupeiqi'print  name下面的结论对吗?外层变量,可以被内层变量使用内层变量,无法被...
    99+
    2023-01-31
    基础 Python
  • Python基础常见问题总结(一)
    1.__ foo 、foo_ 和 __foo__ 三者之间的区别是什么?__foo表示私有属性、_foo表示受保护的属性、__foo__表示Python自带的属性 2.请您简述Python编译的工作原理,PyCodeObject 和 Py...
    99+
    2023-01-31
    常见问题 基础 Python
  • Python基础实战总结
    目录一、思路二、解决方法1)TXT文件存储2)CSV文件存储三、总结前言: 前几天有个叫【-berry】的粉丝在Python交流群里问了一道关于大学生Python题目的问题,如下图...
    99+
    2024-04-02
  • python基础总结--随笔
    1、python语言的特点 1)高级      至少比c和c++都高级,呵呵  2)面向对象    Python 绝不想Java 或Ruby 仅仅是一门面向对象语言,事实上它融汇了多种编程风格  3)可升级       Python 提供了...
    99+
    2023-01-31
    随笔 基础 python
  • python基础知识总结
    ...
    99+
    2023-01-31
    基础知识 python
  • python学习总结二(python基础
    转眼间已经2月份了,python学习总结二进行中ing,今年的目标和打算。。。哎动力哪来,继续吧。 总结上篇 就是 对python 说包含的东东(字符串,数字,变量,操作符,函数,模块,类,列表,等) 总体简单解释下。 后面详细说明 一.语...
    99+
    2023-01-31
    基础 python
  • Python基础知识点总结
       学了一年多的Python,去年做了一段时间的爬虫项目,近来在做数据分析和机器学习的东西,抽空整理一下以前学的Python基础知识点,有借鉴与总结。具体知识点后续会分段展开深入。     1.到底什么是Python?你可以在回答中与...
    99+
    2023-01-31
    知识点 基础 Python
  • Python入门基础知识总结
    目录 一:简介: 二:Python基础语法 2.1.字面量 2.2.注释 2.3.数据类型转换 2.4.标识符 2.5.运算符 2.6.字符串 2.6.1.字符串的三种定义方式 2.6.2.字符串拼接 2.6.3.字符串格式化 2.6.4....
    99+
    2023-09-01
    python 开发语言
  • Python基础技术问题总结
    Introduction此篇文章总结python一些常见的技术问题,每一个都是简短的解释,篇幅不大,不断更新中…解释一下python的 and-or 语法python的and-or常常被用来实现类C语言中的三元运算符:, 更骚包的写法是 x...
    99+
    2023-01-31
    基础 技术 Python
  • python基础的总结是怎样的
    这篇文章将为大家详细讲解有关python基础的总结是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Python的设计目标之一是让代码具备高度的可阅读性...
    99+
    2024-04-02
  • python基础之编码规范总结
    目录一、PEP 8规范二、缩进三、行的最大长度四、空行五、命名约定六、字符串引号七、包八、注释一、PEP 8规范 官方文档:https://legacy.python.org/dev...
    99+
    2024-04-02
  • python 基础知识点归纳总结
    目录 1. python 基础知识点归纳总结1.1. 变量1.2. 数据类型1.3. 控制流语句1.3.1. if 语句1.3.2. for 循环1.3.3. while 循环 1.4....
    99+
    2023-10-20
    python 开发语言
  • Python基础之logging模块知识总结
    目录前言一、日志级别二、basicConfig三、日志写文件四、traceback记录前言 logging模块是Python内置的标准模块,主要用于输出脚本运行日志,可以设置输出日志的等级、日志保存路径等。 ...
    99+
    2022-06-02
    Python logging模块 python常用模块
  • Python基础之元编程知识总结
    目录一、前言二、ImportTime vs RunTime三、元类四、装饰器五、对数据的抽象–描述符六、控制子类的创建——代替元类的方法一、前言 首先说,Python中一切皆对象,老...
    99+
    2024-04-02
  • Python基础异常处理梳理总结
    目录前言一、常见的Python异常AssertionError:断言语句(assert)失败AttributeError:尝试访问未知的对象属性IndexError:索引超出序列的范...
    99+
    2024-04-02
  • python基础一
    1989年的圣诞节期间,吉多·范罗苏姆为了打发时间,决心开发一个新的解释程序。 1991年,第一个Python解释器诞生,它是用C语言实现的,并且能调用C语言的库文件。 计算机不能直接理解任何除机器语言以为的语言,所以必须要把程序员所...
    99+
    2023-01-30
    基础 python
  • python基础(一)
    1.计算机是由什么组成的 CPU、内存、硬盘、输入输出设备 CPU 处理各种数据 相当于人的大脑 内存 存储临时数据 相当于人的临时记忆 硬盘 存储数据 相当于人的...
    99+
    2023-01-30
    基础 python
  • Python--基础一
    Python基础:print & input & 变量 & 运算符 & Python数据类型 & 运算符与表达式 注释 单行注释 #我注释了一行 多行注释 三个单引号'''括起来 ''' 我...
    99+
    2023-01-30
    基础 Python
  • Python基础(一)
    (1)加法的两端只能是数字或者字符串。      如 print( 'kkk' + 12 + 'kkk' ) 是错误的,可修改为 print( 'kkk' + str(12) + 'kkk' ) 。类似 str() 的函数还有 int(...
    99+
    2023-01-31
    基础 Python
  • python 基础(一)
    第一个程序hello.py 以下为内容#!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'teng' print 'hello'#!/usr/bin/env python表示...
    99+
    2023-01-31
    基础 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作