Python入门课程1.1—什么是对象、表达式与控制流程

一、一些基础概念

  • python是一种解释语言,命令通常在python解释器中执行
    python解释器收到1条命令,然后评估该命令,最后返回该命令的结果。

  • 源代码/脚本
    程序员通常提前定义一系列命令,然后把这些命令保存为纯文本文件,这些程序被称为源代码或脚本。
    对于python,源代码通常存储在一个扩展名为 .py 的文件中

  • IDE(集成开发环境)
    许多集成开发环境为python提供了丰富的软件开发平台。
    例如,拥有标准python发型版的IDLE:IDLE提供了一个嵌入式的文本编辑器,可显示和编辑python代码,以及一个基本调试器(允许逐步执行程序,以便检查关键变量的值)。
    在这里插入图片描述

二、python的对象

在Python中,类是所有数据类型的基础

1、创建一个对象(实例化)

通过调用某个类的构造函数,可实例化一个类。如:a = int(),即创建了一个整型类的实例a。

在此实例化类的过程中,a 即是我们创建的一个对象。

2、使用对象

我们可以使用运算符、赋值语句等,直接对一个对象进行各种操作,如:

a = int(1)      #创建了一个整型类对象a,它的值是1
a = a + 1		#将a引用的对象(1)加上1,等于2,再将结果2 赋给a,此时a“变成”了2

也可以通过调用类的方法对对象进行各种操作。
类的成员函数通过使用对象名 + 点操作符(.) + 方法名来调用。
如:

a = list() 		#调用list类的构造函数,创建一个list类的实例a
print (a)
>>> []
a.append(1)
a.append(3)
a.append(2)		#调用list类的append方法,在[]中添加成员1,3,2
print (a)
>>> [1,3,2]
3、python的一些内置类
  • 逻辑类型
    布尔类 bool()
  • 数值类型
    整型类 int() 、浮点型类float()
  • 序列类型
    列表类 list() 、元组类 tuple() 、 字符串类 str()
  • 字典类
    字典/映射类 dic()
  • 集合类
    set类 set() 、 frozenset类(不可变的set类)frozenset()
    (集合中没有重复元素,且元素间没有内在联系、没有顺序。只有不可变类型的实例才可以被添加到一个集合中)

三、表达式

1、标识符、对象和赋值语句
tep =98.6
''' 其中tep是标识符、98.6是一个浮点型对象、表达式'tep =98.6'整体构成一个赋值语句
	在这个赋值语句中,规定tep作为标识符与等号右边表示的对象相关联'''

alter = tep
''' 为98.6这个浮点型对象建立了一个别名alter'''

tep = tep + 5
''不影响已存在的对象98.6,而是重新给标识tep分配了一个新对象103.6'''

在python中,标识符与所引用的对象的内存地址隐式关联。类似java中的引用变量或c++中的指针变量。
标识符的数据类型不需要事先声明(因为python是一种动态类型的语言),它与它所引用的对象类型相关联。

2、运算符、运算符的优先级

以下是一些常见的运算符

  • 逻辑运算符
    notandor
  • 相等运算符
    isis not=!=
  • 比较运算符
    <<=>>=(对数值类型、定义好的字典(??)、有大小写之分的字符串有可预期的结果)
  • 算数运算符
    +-*///%(n/m=q……r,保证q*m+r = n,且0<=r<m)
    位运算符:~取反、&按位与、|按位或、^按位异或、<<左移位用0填充、>>右移位按符号位填充
  • 序列运算符
    s[j]s[start:stop]s[start:stop:step]s+tk*s #s连接k次val in sval not in s
  • 集合/字典运算符:
    set&frozenset支持:key in skey not in ss1 == s2s1 != s2s1 <= s2 #s1是s2的子集s1 < s2s1 >= s2 #s1是s2的超集s1 > s2s1 | s2 #并集s1&s2 #交集s1 - s2 #差集s1 ^ s2 #对称差分(??)
    字典支持:d[key]d[key] == valuedel d[key]key in dkey not in dd1 == d2d1 != d2
  • 扩展赋值运算符: 支持大多数二元运算符进行扩展赋值运算,如:count += 5count = count + 5
    注:对于不可变类型,该语法无法改变现有对象的值,而是对新构造的值重新分配标识符;但对于列表类型,它可通过重新定义语法规则去改变对象的行为,如:)
     alpha = [1,2,3] 
     beta = alpha
     beta + = [4,5]             #在原list上增加两个元素
     beta = beta + [6,7]        #把beta重新分配给一个新列表[1,2,3,4,5,6,7]
     print (alpha,beta)
     >>>[1,2,3,4,5],[1,2,3,4,5,6,7]

运算符是有优先级的
编程语言对符合表达式的执行顺序必须有明确的规定,如:5 + 2 * 3 中乘除运算的优先级要大于加减运算。
同一级别中,优先级较高的运算符会比优先级低的运算符先执行,除非表达式中有括号。
(其他一些运算的优先级暂不赘述……有空补)

3、python支持的一些其他表达式语法
  • 多级赋值:x=y=0
  • 链接 比较运算符:1<=x+y<=10(不用将x+y计算两次)

四、控制流程

1、条件语句

if语句

2、循环语句

while循环、基于索引的for循环

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值