2021-03-14

Python第一章学习笔记(基础知识)

这是我第一次学习Python对基础知识所做的整理。

文章目录

    1.Python对象模型
    2.变量
    3.数字
    4.字符串
    5.运算符与表达式
    6.常用内置函数
    7.基本输入输出
    8.模块导入与使用
    9.The Zen of Python

1.Python对象模型

                                     Python常见内置对象
对象类型类型名称示例简要说明
数字int,float,complex1234, 3.14, 1.3e5, 3+4j数字大小没有限制,内置支持复数及其运算
字符串str‘swfu’ “I’ma student”“Python”‘r’abc’,R’bcd’使用单引号、双引号、三引号作为定界符,以字母r或R引导的表示原始字符串
字节串bytesb’hello world’以字母b引导,可以使用单引号、双引号、三引号作为定界符
列表list[1,2,3][‘a’, ‘b’,[‘c’,2]]所有元素放在一对方括号中,元素之间使用逗号分隔,其中的元素可以是任意类型
字典dict{1: ‘food’,2: ‘taste’, 3:‘import’}所有元素放在一对大括号中,元素之间使用逗号分隔,元素形式为“键:值”
元组tuple(2,-5,6)(3,)不可变,所有元素放在一对括号中,元素之间使用逗号分隔,如果元组中只有一个元素的话,后面的逗号不能省略
集合set frozenset{‘a’, ‘b’,‘c’}所有元素放在一对大括号中,元素之间使用逗号分隔,元素不允许重复;另外,set是可变的,而frozenset是不可变的
布尔型boolTrue,False逻辑值,关系运算符、成员测试运算符、同—
性测试运算符组成的表达式的值一般为True或False
空类型NoneTypeNone空值
异常Exception、ValueError、TypeErrorPython内置大量异常类,分别对应不同类型的异常
文件f = open(‘data.dat’,‘rb’)open是 Python内置函数,使用指定的模式打开文件,返回文件对象
其他可迭代对象生成器对象、range对象、zip对象、enumerate对象、map对象、filter对象等具有惰性求值的特点,除range对象之外,其他对象中的元素只能使用一次
编程单元函数(使用def定义)类(使用class定义)模块(类型为module)类和函数都属于可调用对象,模块用来集中存放函数、类、常量或其他对象

2.Python变量

  • 变量命名的规则

  • 变量命名可以包含数字,大小写字母,下划线或者更多,一般在Python中,以下划线开头的内容具有特殊含义

    • 变量名中不能有空格以及标点符号
  • 不能使用关键字

  • 不建议使用系统内置的模块名,类型名或函数名以及已导入的模块名及其成员名作为变量名

  • 变量名区分英文字母的大小写,例如Teacher和teacher是不同的变量

3.数字
如下代码
在这里插入图片描述

9999999999999800000000000001
5.0
(8+10j)
8.0
10.0
(8-10j)

  • Python中的数字没有大小限制

  • 常见数字分类

    • 整数

    • 浮点数

  • 复数

整数又可分为下列几类

  • 二进制

    Python中以 0b 开头由0,1组成

  • 八进制

    Python中以 0o 开头由0-7数字组成

  • 十进制

    如0,-1,5,15,159

  • 十六进制

    Python中以0x开头 由0-9,a-f组成

4.字符串

  • 在python中字符串属于不可变序列,可以用单引号、双引号、三引号界定,并且三者可以相互嵌套
  • 空字符串可表示为’ ‘或’’ ‘‘或’’’ ‘’’
  • 字符串支持+ * 运算进行合并生成新字符串

5.运算符与表达式

  • 由一个以上的值经过一系列的运算得到新值的过程叫运算 用来操作运算的符号叫运算符
  • 运算符分类
  • 算数运算符
  • 比较或者关系运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算
  • 成员运算符
  • 身份运算符
    如:
    在这里插入图片描述
    2/3= 0.6666666666666666
    3//2= 1
    2**3= 8
    3.0//3.0= 1.0
    False
    True
    False
    25
    20
    False
    • x or y 只有x为假的才计算y

    • x and y 只有x为真才计算y

    • 大小比较可以连用 x>=y x<=y

    • python中逗号 , 并不是运算符,而只是一个普通的分隔符

6.常用内置函数
执行下面的命令可以查看所有内置函数和内置对象

 >>>dir(__builtins__)
['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

如下命令:

a=-2
b=[1,2,3,4,0]
c='a'
print(  abs(a)  ) #返回数字的绝对值
print(  all(b)  ) #对于可迭代对象所有元素 全部非零返回true 若存在零返回false
print(  any(b)  ) #对于可迭代对象存在元素非零,则返回true
print(  bin(a)  ) #把数字转换为二进制串
print(  callable(a) ) #测试对象是否可调用,类和函数是可调用的
print(  chr(65) ) #返回ASCII编码的字符
#print(  dir(a)  ) #返回指定对象的成员列表
print(  ord(c)  ) #返回一个字符的编码
print(  str(b)  ) #把对象转化为字符串
print(  help(math.sin)) #查看指定方法的使用帮助
print(  list(b) )# 把对象转换为 列表
print(  set(b)  ) #集合
print(  tuple(b) )# 元组
#print(  dict(b) ) #字典并返回

2
False
True
-0b10
False
A
97
[1, 2, 3, 4, 0]
Help on built-in function sin in module math:
sin(…)
sin(x)
Return the sine of x (measured in radians).
None
[1, 2, 3, 4, 0]
{0, 1, 2, 3, 4}
(1, 2, 3, 4, 0)
————————————————
此为本人转载
原文链接:https://blog.csdn.net/qq_40181592/article/details/86770782

7.基本输入输出

  • 在Python中,使用内置函数input()来接受用户的键盘输入,函数print()是基本输出函数
  • 不论用户输入什么,input()函数的返回值结果都是字符串,需要将其转换为相应的类型
  • 参数sep用来指定分隔符,end指定结束符
>>> x=input("please input:")
>>>print(type(x))
>>>print(x,end=" ")
>>>print(int(x)+1)

please input:2
<class ‘str’>
2 3

>>>print(3,5,7,sep=':')
>>>print(3,5,7,sep=',')

3:5:7
3,5,7

8.模块导入与使用
导入方法分为两种:

  • import 模块名【as 别名】 使用这种方式导入后,需要在使用的对象前加上前缀 “模块名 . 对项名”的方式进行访问,也可以用“别名 对象名”的方式使用其中的对象

  • from 模块名 import 对象名【as 别名】 使用这种方式仅导入使用的对象,并且可以为这个对象起一个别名,这种方法可以减少查询次数,减少程序员的代码量,不需要使用模块名作为前缀

  • 比较极端的情况是一次导入模块中全部的对象
    from math import *
    不推荐使用这中方法,一旦多个模块中有同名的对象,会导致混乱

9.The Zen of Python

                                      Python之禅
>>>import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

只需要用心去体会,并在自己编写程序的时候多想想这段话,努力让自己编写的代码更加优雅。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
embedcpp-2021-03是一个有关嵌入式C++编程的课程,于2021年3月举办。嵌入式C++编程是指在嵌入式系统中使用C++编程语言进行开发的一种方法。 在嵌入式系统中,资源通常是有限的,例如处理器速度、内存容量和存储空间等。因此,使用C++编程语言可以提供更高的灵活性和效率,帮助开发人员充分利用有限的资源。C++在嵌入式系统中的应用范围广泛,例如物联网设备、汽车电子和工业自动化等领域。 embedcpp-2021-03课程旨在向学员介绍嵌入式C++编程的基础知识和技巧。课程内容通常包括以下方面: 1. C++语法和特性:介绍C++的基本语法、面向对象编程和泛型编程等概念,以及C++11、C++14和C++17的一些新特性。 2. 嵌入式系统概述:了解嵌入式系统的基本特点、硬件和软件组成,以及与传统桌面开发的区别。 3. 低级编程:学习如何与硬件交互,包括使用寄存器、配置外设和处理中断等。还可以介绍使用汇编语言优化性能的技巧。 4. 内存管理:探讨嵌入式系统中的内存管理技术,包括堆栈和堆的使用、动态内存分配和对象生命周期管理等。 5. 实时操作系统(RTOS):介绍嵌入式系统中常用的实时操作系统,如FreeRTOS和µC/OS等,学习如何使用RTOS进行任务调度和资源管理。 除了理论知识,embedcpp-2021-03课程通常还包括实际的项目练习,以帮助学员将所学知识应用于实际场景。通过该课程,学员可以了解嵌入式C++编程的基础概念和实践技巧,为嵌入式系统开发提供了一定的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值