Python 入门知识捡漏

本文详细介绍了Python的基本概念,包括变量作用域、三元运算符、不同进制表示、Python的基础特性,以及字符串、列表等数据类型的相关操作方法。通过具体实例展示了如何在Python中创建和操作这些数据类型。

一、对于变量的作用域,执行申明在内存中存在,该变量就可以在下面的代码中使用(即作用域)

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中任何一个对象都是有自己的类,任何一个对象属性都是由自己的类的方法引用而来


         wKioL1ZMfOzCQioHAACdt-_rthU679.png

提示:类和对象的关系图解


③type查看对象的类型(以列表list类为例

wKiom1ZMgvbATJCTAAAqCOO0T78299.png


④dir(类型名)查看类中提供的所有功能

wKiom1ZMgxTDFXRkAAAm8SYtzbE337.png

说明:在dir(list)中,有两边带下划线和不带下划线的两种方法,有下划线的为内置方法,没有下划线的为非内置方法,并且非内置方法的执行只能通过"对象.非内置方法"的形式进行运行



⑤help(类型名) 查看类中所有的详细功能

wKiom1ZMgyrB0KqiAAAqn9N15wo071.png


⑥help(类型名.功能名)查看类中某功能的详细

wKioL1ZMg5OxdbAuAAAWYqudzME094.png


⑦类中的方法

__方法__:内置方法,可能有多种执行方法,至少一种

方法:只有一种执行方法,即:对象.方法,也就是该方法只能放在对象后面用点号(.)连接


########################数据类型的内置方法#################################


⑧数据类型的内置方法

wKiom1ZMiTmiWp81AAAsRVP8EeE806.png

⑨内置方法的执行

wKiom1ZMiWOjDTNvAAAVmf_yYOM685.png

变量1.内置方法(变量2)这种模式进行执行

特殊的内置方法__abs__

wKiom1ZMilySRVpBAAAS83K7zJo834.png


⑩常见的内置方法__add__、__float__、__add__、__cmp__、__div__、__divmod__、__floordiv__、__format__、__hash__等

wKioL1ZN1_Cj2Z8UAAAu2839SEM531.pngwKioL1ZN1_DByghWAAA5EAGQcW0178.png


浮点型(float)和长整型方法的内容基本一致,可以参考整型数据(int)


########################字符串的内置方法##################################

①创建字符串

str1 = “alex”

str1 = str("alex")

两种方法本质一样,只是第二种方法可以明确的看出来str1是用哪个类(种类是str)创建的


②常用的方法

首字母大写

wKiom1ZN47XRYEAbAAAOdHoeRn0950.png

居中显示,如果要用20字符填充并且位于中间,两边用空格或者*或者#

列表中元素出现的次数(包括从某个位置开始到某个位置结束字母a出现的次数)

wKiom1ZPDwThtmVoAAAibs5EqwE774.png


编码和解码(各种编码之间的关系图)

wKioL1ZPICKie2ecAABSeavQeqM905.png


注释:utf-8和gbk是Unicode的扩展

举例说明:

wKioL1ZPIoDhSUYMAAA3__xd5GQ950.png


字符串方法---以“某某字符”结尾:endswith()

wKiom1ZPJIbRU6qNAAAUf49mUVk095.png


字符串方法----将tab转换成空格,默认一个tab转换成8个空格:expandtabs(),其中括号中的数字是多少就是将tab键转换位多少个空格,其中不写即为默认8个,

wKiom1ZPJojSAS4cAAAr2I0_pgM934.png


字符串方法------查找第一个要查找的元素下标,find()方法,如果返回结果为-1,则表示没有该元素或者子序列

wKiom1ZPJ-vzJbM8AAAXySfooNA494.png


字符串方法-----格式化字符串format()方法

wKiom1ZPKsvC9PaEAAAsDZ4FRWQ215.png

在运用format进行传值的时候,如果用来传值的对象是列表或者元组,那么要在对象前加一个星号(即*)

wKioL1ZPLqbBPVXWAABDNgEIRFA470.png


在运用format进行传值的时候,如果用来传值的对象是字典,那么要在该对象(即字典)前加两个星号(即**dict)

wKiom1ZPMAXALcQPAAA1VvN2N4s222.png

字符串方法------元素下标查找index(),如果找到就返回小标值,否则就报错

与find()方法进行对比

wKiom1ZPMxWhvJObAABKyhIq2-4387.png


字符串方法------当字符串为数字或者字母则返回True,否则返回False


wKiom1ZPNGyjvYeWAAA2b84u-hY534.png


字符串方法------当字符串为字母,为数字返回True,否则返回False

wKioL1ZPNgaikaeUAAAfcUI_8dU066.png


字符串方法------当字符串是否为数字,为数字返回True,否则返回False

wKioL1ZPNqeiYayDAAApPgyAIHo734.png


字符串方法------当字符串是否为小写字母,是小写返回True,否则返回False

wKioL1ZPN2uSCwSbAAAqArzN6oY598.png


字符串方法------当字符串是否全部为大写字母,是大写返回True,否则返回False


wKiom1ZPOXTiu4HUAAAtPtBzDMU020.png


字符串方法-----将字符串转换成标题(title()方法)和判断字符串是否为标题(istitle()方法)

wKiom1ZPOG3T7ffKAAArz2ql6AQ481.png


字符串方法-----join方法,可以将列表或者字典或者元组通过某个方式连接成字符串

wKioL1ZPO37DHpDqAAA0_pbyk48391.png


字符串方法-------左右对齐和居中显示

wKioL1ZPPJagJh_CAAA5kMoXKao577.png

字符串方法-------大写变小写;小写变大写;一次性将大写变小写,小写变大写进行转换

wKioL1ZPPk_jpVulAAAjX_6ZX9E985.png

字符串方法-------partition将字符分割成左、中、右三部分,可以指定分割的方式,即从字符串中某个字母进行分割

wKiom1ZPP6mAbeU_AAA0E2Wg6m4221.png


字符串方法-------replace,替换,找到列表中所有符合的规则全部进行替换

wKiom1ZPQNPwweN3AAAh3u0vPNY968.png


字符串方法-------split & rsplit,分割,指定字符串中的某个字符或者符号进行分割字符串

wKioL1ZPQ5ahMTXMAAAbbIDj4eE248.png


列表与列表方法


①定义一个列表

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,如需转载请自行联系原作者





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值