Python---1

一、简介
1、Python 是一种解释型高级语言,这意味着开发过程中无编译环节。
Python 是面向对象语言: 支持面向对象的风格或代码封装在对象的编程技术。
编译型:编译器将源代码逐条编译成机器代码,任何一条语句有错,都不能通过编译,最终形成目标代码,以后每次执行只执行目标代码即可,因此执行速度快。
解释型:解释器逐条解释源代码,成功一条就执行一 条,每次执行时都需要解释,所以速度慢。

二、内容

要素1:数据类型

1、python使用方括号([])来存取字符串等序列中的某一项,如:

             #索引位置是从0开始计数。
"hello"[1]   #结果为:e
"hello"[0]   #结果为:h

要素2:对象引用

x="blue"   #创建一个str对象,其文本内容为'blue',同时还创建一个名为X的对象引用,X引用的就是这个str对象
z=x        #创建一个名为z 的新对象引用,并将其设置为对象引用X所指向的相同对象(这里是包含文本"blue"的str对象)
y="green"   # 与 x="blue"类似

如:

z=y
x=z

上述语句执行之后,所有对象引用实际上引用的都是同一个str。由于不存在更多的对字符串"blue"的对象引用,因此python可以对其进行垃圾收集处理。 (垃圾处理机制)
在这里插入图片描述
python标识符对大小写敏感。

python使用“动态机制”:即只要需要,某个对象引用都可以重新引用一个不同的对象(可以是不同的数据类型)。如:

route=886   #此时route类型为int,此时对route可以进行如“/”运算
route="hello"    #此时route类型为str,int对象将进入垃圾收集流程,因为没有对象引用再对其进行引用。如果此时再使用“/”,就会导致产生一个typeError,因为对str而言,“/”并不是一个有效的操作符。

type()函数会返回给定的数据项的数据类型(也称为“类”)

x="blue"
y="green"
z=x
x   #在交互式使用时,输出结果为"blue"
x,y,z   #在交互式使用时,输出结果为("blue","green","blue")

特别注意:此时“x,y,z”的输出为元组。

**

要素3:组合数据类型

**
元组与列表:元组固定,创建后就不能改变;列表是可变的,在需要时可以插入或移除数据项。

"hello",  #在交互式输入,显示的结果为('hello',),即为元组

列表的创建:【】

列表与元组并不是真正存储数据项,而是存放对象引用。

元组、列表是有大小的。

len(('one',))    #输出结果为1,即元组中只含有1个元素
len([3,5,2,1,'hello'])  #输出结果为5,即列表中只含有5个元素 、
len("automatically")   #输出结果为13,即元组中只含有13个元素,自动转换为元组

append():列表项的添加,具有潜在的更高的效率,对于很长的列表尤其如此。

x=[1,2,3]
x.appen("hello")
print(x)   #输出结果为 [1,2,3,'hello']

元素4:逻辑操作符

1、身份操作符:is
由于所有的python变量实际上都是对象引用,有时,询问两个或更多的对象引用是否指向相同的对象是有意义的。
IS操作符:二元操作符,检查左右两端对象引用是否指向同一个对象。 即:is对对象所在的内存地址进行比较。

>>> a=['a','abc','c']
>>> b=['a','abc','c']
>>> a is b   #输出结果:False,由于列表本身是以单独的list对象存储
>>> b=a
>>> a is b   #输出结果:True

2、比较操作符:<,<=,==,!=,>,>=

>>> a='many paths'
>>> b='many paths'
>>> a is b  #输出结果为:False
>>> id(a)   #输出结果为:13039040,即内存地址
>>> id(b)   #输出结果为:35776776,即内存地址
>>>> a==b   #输出结果为:True   ,判断值是否相同。

3、成员操作符:in ,not in

>>> a=['a','abc','c']	#a为列表
>>> 'a' in a   #输出结果为:True

>>> p=('a','abc','c')	#p为元组
>>> 'abc' in p	#输出结果为:True

>>> m="hello the world!"	
>>> "h" in m           #输出结果为:True

4、逻辑运算符:and,or,not。
and与or都使用short-circuit逻辑,并返回决定结果的操作数,而不是返回布尔值(除非实际上就是布尔操作数)。如

>>> five=5
>>> two=2
>>> zero=0
>>> five and two         #输出结果为:2
>>> two and five         #输出结果为:5
>>> five or two            #输出结果为:5
>>> two or five           #输出结果为:2

要素5:控制流语句。

suite:一块代码,也就是说一条或多条语句组成的序列。

1、if语句
语法格式:
if boolean_expression1:
suite1
elif boolean_expression2:
suite2

elif boolean_expressionN:
suiteN
else:
else_suite

说明:可以有0个或多个分支,else分支是可选的。若考虑某个特殊情况,但又不需要这种情况发生时进行处理,那么可以使用pass作为该分支的suite 。 .

if line<1000:
    print("small")
elif lines<10000:
    print("medium")
else:
    print("large")

2、while语句
while语句用于0次或多次执行某个suite,循环执行的次数取决于while循环中布尔表达式的状态,语法:
while boolean_expression:
suite

3、for…in语句
语法:
for variable in iterable:
suite #语句前空4个空格

4、基本的异常处理
异常处理语法:
try:
try_suite #语句前空4个空格
except exception1 as variable1:
exception_suite1 #语句前空4个空格

except exceptionN as variableN:
exception_suiteN #语句前空4个空格

s=input("enter an integer:")
try:
    i=int(s)
    print("valid integer entered:",i)
except ValueError as err:
    print(err)

enter an integer:3.5
invalid literal for int() with base 10: ‘3.5’
即:如果用户输入的是3.5,则输出: invalid literal for int() with base 10: ‘3.5’ ,因为有时候需要用int()函数转换字符串为整型,但是切记int()只能转化由纯数字组成的字符串。
enter an integer:13
valid integer entered: 13
如果用户输入的是13,则输出: valid integer entered: 13

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值