Python

来源:互联网 发布:寻求网络黑客高手帮忙 编辑:程序博客网 时间:2024/05/21 19:48

Python 基础

 

1.-----字符串

不支持修改

 

type()  查看数据类类型

Python title() 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写

 

访问列表元素

>>>names=['002','003','004','005','007']

>>>print(names[2])

004

 

print(names)

['002', '003', '004', '0101001', '007']

 

 

一、     定义列表

1.names =['mike','mark','candice','laular'] #定义列表

2.num_list =list(range(1,10)) #range生成1-10范围内的数,并强制转化成列表

二、增:append()、insert()方法

方法 append() 将元素添加到末尾

2.insert()方法:在指定位置添加元素或者列表

方法 insert() 可在列表的任何位置添加新元素 

#names.insert(1,'enjoy')

#names.insert(1,names2)  在指定位置添加列表

(在索引处添加空间,并将值存储到这个空间,将其他元素右移一个位置)

三、删:del、pop()、remove()、clear()

1.del:  删除指定下标的值      delnames[0]

2.pop()     #默认从列表末尾删除,也可以删除指定下标的值

            #names.pop()        删除末尾的值

            #names.pop(1)      删除指定下标的值

3.remove()方法:删除指定的值

              #names.remove('004')   在原列表中直接删除

              #names[1].remove('bird') 在另一个list里需要定位到list才能删除

4.clear() 清空数据

              # names.clear()  清空列表数据

 

5.改

要修改列表元素,可指定列表名和要修改的元素索引,再指定该元素新值。

#names[3]='0101001'

 

四、查:查询列表可通过下标和切片的方式

      1.切片方式

            #names=['002','003','004','005','007']

#print(names[1:3])  通过切片方式获取值(下标)切片是顾头不顾尾

      结果 ['003', '004']

#print(names[0:])    获取从从下标后面的所有   结果['002','003','004','005','007']

#print(names[:2])    获取从下标    前面的所有值  结果['002', '003']

#print(names[:])         获取所有值

#print(names[-1])       获取最后一个值

# print(names[::-1])  从后往前取值

#print(names[1::3])   每隔三个取一个

六、列表的其他方法

1.index()  获取指定元素的下标

#names.index('005')

 

#names.count('003')  获取指定元素出行的次数

 

.extend()方法:合并列表,修改原列表的值,只能合并到原列表末尾

#names.extend(abc)  合并列表

 

sort()方法:进行排序:默认为升序,降序排序需要添加:reverse=True,reverse是反转的意思

#names.sort()  升序排序

names.sort(reverse=True)   降序排序

 

sorted()  对列表进行临时升序排序

>>>print(sorted(arr))

[12, 23, 31,123, 123, 123, 123]

 

#print(sorted(arr,reverse=True))  对列表进行临时降序排序

 

[123, 123, 123,123, 31, 23, 12]

1)      Len()函数可以确定列表长度          

>>>arr=[123,123,123,123,12,31,23]

>>>len(arr)

7

 

 

七、insert和extend的区别

1.insert可以指定插入元素的位置,extend不能指定吗,只能合并末尾

2.insert是在原列表基础上添加元素,什么都可以加(列表、字符串……)extend只能合并2个列表,对列表进行扩展,不能添加字符串

八、元组

1.元组的值不能改变,是一个不可变的列表可以通过访问下标的方式和切片的方式进行查询,但是想要修改笔先转换成list

#rest=('phusic','chinese','music','mark','laular')   定义元祖

#rest[0]=0011      非法修改

 

 

#tup2=list(tup1) #想要修改元祖,必须先将其转换成list才可以

#print tup2     #打印结果:['physics', 'chemistry', 1997, 2000]

#tup2[2] = '1989'

#print tup2          #打印结果:['physics','chemistry', 1989, 2000]

2.元祖只有count和index方法

 

2.元祖只有count和index方法

names =('mike','mark','candice','laular','mark','msr')

print(names.count('mark'))#打印结果:2

print(names.index('msr'))#打印结

 

 

二.操作列表

1)遍历列表 

# arr=[123,123,123,123,12,31,23]

# fori in arr :

    print(i)

2)创建数值列表

    1.range()函数产生一系列数字, 差一行为的结果

    #for num in range(1,5):

     print(num)

 

1

2

3

4

2.使用range()创建数字表

    使用list()将range()的结果直接转换为列表。

# numbers= list(range(1,6))

print(numbers)

 

可指定步长

# number=list(range(2,16,3))

>>>print(number)

[2,5, 8, 11, 14]

 

使用range几乎能创建任何需要的数字集,

>>>pops=[]                     #创建空列表

>>>for pop in  range(1,11):         #使用函数range()遍历1-10的值

  pop=pop**2                     #在循环中,计算当前值的平方

  pops.append(pop)               #将新计算的平方值添加到列表末尾

 

 

>>>print(pops)

[1,4, 9, 16, 25, 36, 49, 64, 81, 100]

 

简化上面的代码    ----

      >>> ppp=[]

>>>for ps in range(1,11):

  ppp.append(ps**2)

 

 

>>>print(ppp)

[1,4, 9, 16, 25, 36, 49, 64, 81, 100]

3.对数字列表执行简单的统计计算

 

min(列表名)  最小值   max()最打值  sum()求和

 

---

能被3整除的数字 1-30

>>>number=[]

>>>for num in range(1,11):

  number.append(num*3)

 

 

>>>print(number)

[3,6, 9, 12, 15, 18, 21, 24, 27, 30]

 

4.使用列表的一部分:切片

 

可省略起止或终止索引,负索引返回离列表末尾相应距离的元素

打印后面三个

>>>print(pl[-3:])

['bird','pop', 'fly']

4.2 遍历切片 

遍历列表的部分元素,可在for循环中使用切片

>>>for ps in pl[:4]:

  print(ps.title()) 

Pig

Dog

Bird

Pop

4.3复制列表

要复制整个列表,方法是省略起止和终止索引

Pl原列表

pdddd=pl[:]

复制列表切片

print(pff)

['pig','dog', 'bird']

 

4.4 修改元组变量

虽然不能修改元组的元素,但可以给援助变量赋值

 

#dimensions= (200, 50)

print("Originaldimensions:")

fordimension in dimensions:

print(dimension)

dimensions= (400, 100)

 print("\nModified dimensions:")

fordimension in dimensions:

print(dimension)

 

5.If语句

5.1示列

 

5.2条件测试

       每条if语句的核心都是一个值为true或flase的表达式,这种表达式称为条件测试。

        >>>car='lol'

        >>>car=='lol'

True

检测是否相等时不考虑大小写,两个大小写不同的字值会视为不相等

 

>>>game='LOL'

>>>game=='lol'

False

若只想检查变量的值,课件变量的值转换为小写,再比较

>>>game.lower()=='lol'

True

5.2.3检查是否不相等

(!=)

5.2.4比较数字

==  ,!= ,<=,>=

5.2.5 检查多个条件

关键字and将两个条件测试合而为一

>>>  age_0 = 22

>>>  age_1 = 18

>>>  age_0 >= 21 and age_1 >= 21

False

为改善可读性,可增加括号

2.使用or检查多个条件

与  只要有一个天条件满足,就通过测试

>>>num=21

>>>num1=18

>>>num>=18 or num1>=18

True

5.2.6 检查特定值是否包含在特定的列表中

使用关键字in

>>>food=['touf','rice','niude','shal']

>>>'touf' in food

True

5.2.7布尔表达式

布尔表达式的结果要么为True要么为false

#Game_active=True

5.3if语句

>>>age=21

>>>if age>18:

  print("you old !")

 

youold !

5.3.2 if-else语句

 

>>>if age<18:

  print("you are too yong")

else:

  print("you old")

  you old

5.3.3  if-elif-else结构

    Elif代码是另一个if测试前面的测试未通过就执行

>>> if age<4:

  price=0

elif age<18:

  price=5

elif age<65:

  price=10

else:

  price=5

 

 

>>>print("  $"+str(price))

  $5

 

5.4.2 判断列表是否为空

 

 

Python在列表至少包含一个元素时返回True,为空时返回Flase

 

 

六.字典

 

5.1一个简单字典

>>>al_0={'color':'blue','points':8}

>>>print(al_0['color'])

blue

>>>print(al_0['points'])

8

>>> 

 

在Python中字典是一系列的键值对,每个键都与一个值相关联。

与键相关的值可以是数字、字符串、列表乃至字典。键和值之间用冒号分隔,而键值对之间用逗号分隔。

添加键值对

al_0['x_points']=15

>>>al_0['y_points']=15

>>>print(al_0)

{'color':'blue', 'points': 8, 'x_points': 15, 'y_points': 15}

5.2修改字典中的值

>>>al_0['color']='yellow'

>>>print(al_0)

{'color':'yellow', 'points': 8, 'x_points': 15, 'y_points': 15}

 

5.3删除键值对

del

>>> delal_0['points']

>>> print(al_0)

{'color': 'yellow','x_points': 15, 'y_points': 15}

 

5.4遍历字典

 

可声明两个变量,用于存储键— 值对中的键和值,对于这两个变量,可使用任何名称。

>>>user={'username':'eff','first':'kio','last':'fer'}

>>>for key,value in user.items():

  print("\nkey:"+key)

  print("value:"+value)

key:username

value:eff

 

key:first

value:kio

 

key:last

value:fer

 

5.4.2 遍历字典中的所有键

方法keys()更容易让人理解,for n in favorite_languages:也能输出这样的结果

遍历字典时,会默认遍历所有键

>>>favorite_languages={'jek':'Python','jim':'c++','bob':'java','pop':'vb'}

>>>for n in favorite_languages.keys():

  print(n.title())

 

Jek

Jim

Bob

Pop

 

在for循环中对返回的值进行排序,可使用storted()来获得特定顺序排列的副本

forname in sorted(favorite_languages.keys()):

 

遍历字典中的所有值

方法Values()

通过包含重复元素的列表用set()

forlanguage in set(favorite_languages.values()):

原创粉丝点击