一、对于变量的作用域,执行申明在内存中存在,该变量就可以在下面的代码中使用(即作用域)
1
2
3
|
if
2
=
=
2
:
name
=
‘alex’
print
name
|
下面结论是否正确?
外层变量,可以被内层变量使用
内存变量,无法被外层变量使用
对以上代码进行执行:
1
2
3
4
5
6
7
8
9
10
11
|
#!/usr/bin/env python
# -*- coding:utf8 -*-
if
2
=
=
2
:
name
=
'alex'
print
name
print
name
[root@Python day001]
# python new_test.py
alex
alex
[root@Python day001]
#
|
总结:所以对于Python,只要变量在内存中申明了,那么可以直接使用
二、三元运算
result = 值1 if 条件 else 值2
如果条件为真:result = 值1
如果条件为假:result = 值2
示例①
name = ‘alex’
if 1==1:
name = 'sb'
else:
name ='2b'
代码改写:
name ='sb' if 1==1 else 2b
接下来就可以直接把name拿出来进行相应的处理
三、各种进制的表示方法
二进制,01
八进制,01234567
十进制,0123456789
十六进制,0123456789ABCDE
四、Python基础
①对于Python,一切事物都是对象,对象基于类创建(或者说对象是由类来创建)
②在Python中任何一个对象都是有自己的类,任何一个对象属性都是由自己的类的方法引用而来
提示:类和对象的关系图解
③type查看对象的类型(以列表list类为例)
④dir(类型名)查看类中提供的所有功能
说明:在dir(list)中,有两边带下划线和不带下划线的两种方法,有下划线的为内置方法,没有下划线的为非内置方法,并且非内置方法的执行只能通过"对象.非内置方法"的形式进行运行
⑤help(类型名) 查看类中所有的详细功能
⑥help(类型名.功能名)查看类中某功能的详细
⑦类中的方法
__方法__:内置方法,可能有多种执行方法,至少一种
方法:只有一种执行方法,即:对象.方法,也就是该方法只能放在对象后面用点号(.)连接
########################数据类型的内置方法#################################
⑧数据类型的内置方法
⑨内置方法的执行
变量1.内置方法(变量2)这种模式进行执行
特殊的内置方法__abs__
⑩常见的内置方法__add__、__float__、__add__、__cmp__、__div__、__divmod__、__floordiv__、__format__、__hash__等
浮点型(float)和长整型方法的内容基本一致,可以参考整型数据(int)
########################字符串的内置方法##################################
①创建字符串
str1 = “alex”
str1 = str("alex")
两种方法本质一样,只是第二种方法可以明确的看出来str1是用哪个类(种类是str)创建的
②常用的方法
首字母大写
居中显示,如果要用20字符填充并且位于中间,两边用空格或者*或者#
列表中元素出现的次数(包括从某个位置开始到某个位置结束字母a出现的次数)
编码和解码(各种编码之间的关系图)
注释:utf-8和gbk是Unicode的扩展
举例说明:
字符串方法---以“某某字符”结尾:endswith()
字符串方法----将tab转换成空格,默认一个tab转换成8个空格:expandtabs(),其中括号中的数字是多少就是将tab键转换位多少个空格,其中不写即为默认8个,
字符串方法------查找第一个要查找的元素下标,find()方法,如果返回结果为-1,则表示没有该元素或者子序列
字符串方法-----格式化字符串format()方法
在运用format进行传值的时候,如果用来传值的对象是列表或者元组,那么要在对象前加一个星号(即*)
在运用format进行传值的时候,如果用来传值的对象是字典,那么要在该对象(即字典)前加两个星号(即**dict)
字符串方法------元素下标查找index(),如果找到就返回小标值,否则就报错
与find()方法进行对比
字符串方法------当字符串为数字或者字母则返回True,否则返回False
字符串方法------当字符串为字母,为数字返回True,否则返回False
字符串方法------当字符串是否为数字,为数字返回True,否则返回False
字符串方法------当字符串是否为小写字母,是小写返回True,否则返回False
字符串方法------当字符串是否全部为大写字母,是大写返回True,否则返回False
字符串方法-----将字符串转换成标题(title()方法)和判断字符串是否为标题(istitle()方法)
字符串方法-----join方法,可以将列表或者字典或者元组通过某个方式连接成字符串
字符串方法-------左右对齐和居中显示
字符串方法-------大写变小写;小写变大写;一次性将大写变小写,小写变大写进行转换
字符串方法-------partition将字符分割成左、中、右三部分,可以指定分割的方式,即从字符串中某个字母进行分割
字符串方法-------replace,替换,找到列表中所有符合的规则全部进行替换
字符串方法-------split & rsplit,分割,指定字符串中的某个字符或者符号进行分割字符串
列表与列表方法
①定义一个列表
1
2
3
4
|
>>> nu_list
=
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
]
>>>
print
nu_list
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
]
>>>
|
注意:定义列表用中括号[],列表里面的元素如果是数字可以不用引号(单引号和双引号),如果是字母或者字符串必须要用引号
②列表方法--------append(),向列表中追加一个元素(元素可以是列表也可以字符串)
1
2
3
4
5
6
7
8
9
10
|
>>> nu_list
=
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
]
>>>
print
nu_list
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
]
>>> nu_list.append(
'g'
)
>>>
print
nu_list
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'g'
]
>>> nu_list.append(
'123445656'
)
>>>
print
nu_list
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'g'
,
'123445656'
]
>>>
|
③列表方法--------count(),统计列表中元素在列表中出现的个数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
>>> nu_list
=
[
'bb'
,
'bb'
,
'cc'
,
'dd'
,
'aa'
,
'cc'
,
11
,
22
,
33
,
22
,
22
,
11
]
>>> nu_list.count(
'bb'
)
2
>>> nu_list.count(
'cc'
)
2
>>> nu_list.count(
'1'
)
0
>>>
>>> nu_list.count(
'11'
)
0
>>> nu_list.count(
11
)
2
>>> nu_list.count(
22
)
3
>>> nu_list.count(
'cc'
)
2
>>>
|
④列表方法--------extand(),针对原列表进行扩展,extand的操作对象是列表,扩展前后列表的内存地址是不会变化的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
>>> nu_list
=
[
'alex'
,
'eric'
,
'tony'
,
'sam'
]
>>> mu_list
=
[
'kate'
,
'susan'
,
'jannes'
]
>>> nu_list.extend(mu_list)
>>> nu_list
[
'alex'
,
'eric'
,
'tony'
,
'sam'
,
'kate'
,
'susan'
,
'jannes'
]
>>> s_list
=
[
11
,
22
,
33
,
44
,]
>>> nu_list.extend(s_list)
>>> nu_list
[
'alex'
,
'eric'
,
'tony'
,
'sam'
,
'kate'
,
'susan'
,
'jannes'
,
11
,
22
,
33
,
44
]
>>>
>>>
id
(nu_list)
39488648
>>> nu_list.extend(s_list)
>>> nu_list
[
'alex'
,
'eric'
,
'tony'
,
'sam'
,
'kate'
,
'susan'
,
'jannes'
,
11
,
22
,
33
,
44
,
11
,
22
,
33
,
44
]
>>>
id
(nu_list)
39488648
>>>
|
⑤列表方法--------index(),找出列表中某个元素第一次出现时的下标,如果元素不存在就触发异常
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
>>> nu_list
[
'alex'
,
'eric'
,
'tony'
,
'sam'
,
'kate'
,
'susan'
,
'jannes'
,
11
,
22
,
33
,
44
,
11
,
22
,
33
,
44
]
>>> nu_list.index(
'alex'
)
0
>>> nu_list.index(
'kate'
)
4
>>> nu_list.index(
'susan'
)
5
>>> nu_list.index(
33
)
9
>>> nu_list.index(
55
)
Traceback (most recent call last):
File
"<stdin>"
, line
1
,
in
<module>
ValueError:
55
is
not
in
list
>>>
|
⑥列表方法--------insert(),在列表中某个位置插入元素,插入的元素也可以是列表
1
2
|
>>> list001
=
[
'a'
,
'b'
,
'c'
,
'd'
]>>> list001.insert(
2
)Traceback (most recent call last):
File
"<stdin>"
, line
1
,
in
<module>TypeError: insert() takes exactly
2
arguments (
1
given)>>> list001.insert(
2
,
33
)>>> list001[
'a'
,
'b'
,
33
,
'c'
,
'd'
]>>> list001.insert(
0
,
'oooooo'
)>>> list001[
'oooooo'
,
'a'
,
'b'
,
33
,
'c'
,
'd'
]>>>
>>> list002
=
[
1
,
2
,
3
,
4
]>>> list001.insert(
0
,list002)>>> list001[[
1
,
2
,
3
,
4
],
'oooooo'
,
'a'
,
'b'
,
33
,
'c'
,
'd'
]>>>
|
⑦列表方法--------pop(),删除并返回指定下标的元素,如果没有指定下标,则删除列表中最后一个元素,并返回该元素
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
>>> nu_list
=
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
]
>>> nu_list.pop()
'e'
>>> nu_list
[
'a'
,
'b'
,
'c'
,
'd'
]
>>> nu_list.pop(
0
)
'a'
>>> nu_list
[
'b'
,
'c'
,
'd'
]
>>> nu_list.pop(
2
)
'd'
>>> nu_list
[
'b'
,
'c'
]
>>>
|
⑧列表方法--------remove(),删除指定的元素,(从左至右,重复元素只删除第一个)
1
2
3
4
5
6
7
8
9
|
>>> test_list
=
[
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'a'
,
'b'
,
'c'
]
>>>
>>> test_list.remove(
'a'
)
>>> test_list
[
'b'
,
'c'
,
'd'
,
'e'
,
'a'
,
'b'
,
'c'
]
>>> test_list.remove(
'c'
)
>>> test_list
[
'b'
,
'd'
,
'e'
,
'a'
,
'b'
,
'c'
]
>>>
|
⑨列表方法--------reverse(),将列表顺序颠倒(反转)过来
1
2
3
4
5
6
|
>>> test_list
[
'b'
,
'd'
,
'e'
,
'a'
,
'b'
,
'c'
]
>>> test_list.reverse()
>>> test_list
[
'c'
,
'b'
,
'a'
,
'e'
,
'd'
,
'b'
]
>>>
|
⑩列表方法--------sort(),排序,如果列表中有数字,按照数字大小进行排序,如果列表中是字母,按照ascii码进行排序,如果是中文,则按照Unicode编码进行排序
1
|
>>> test001
=
[
'a'
,
'b'
,
'f'
,
'22'
,
11
,
23
,
'天'
,
'夫'
]>>> test001.sort()>>> test001[
11
,
23
,
'22'
,
'a'
,
'b'
,
'f'
,
'\xb7\xf2'
,
'\xcc\xec'
]>>>
'天'
'\xcc\xec'
>>>
'夫'
'\xb7\xf2'
>>>
|
本文转自027ryan 51CTO博客,原文链接:http://blog.51cto.com/ucode/1715224,如需转载请自行联系原作者