Python新手学习(八)

010

列表,比喻成工程仓库,一个数组里面只能全装int或char
而列表里面能塞一堆不同的东西
三种创建方法:
一是普通列表
二是混合列表,整形,字符型,浮点型和嵌套另一个列表在里面
三是空列表em=[ ]
回忆 way.append(‘福禄娃娃’),一次只能加一个
extend使用时,后面不是加一个元素,是加一个列表

a=list(range(1,11))
print(a)
b=list(range(1,11,2))
b.extend([a])
print(b)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 3, 5, 7, 9, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]

011

insert带插入位置索引值的插入,回忆以前笔记

列表下标是从0开始的,不是从1开始,这点跟数组比较像

remove是删除
member.remove(‘怡静’)

del menber[1] 或者 del menber 可以删掉列表中的一个,或者删掉整个列表

pop(),像栈一样弹出栈顶的东西,弹出列表最后一个元素

列表分片
member[0:3]不会改变原列表
member[:]

012

列表如果元素单一(仅仅有一个元素,可以比较大小

list1=[123,456]
list2=[234,123]
print(list1>list2)
list3=[456,123]
print(list3>list1)
list4=list1+list2
print(list4)
list5=list4*3
print(list5)


print(list5.count(123))
print(list5.index(123,3,6))
False
True
[123, 456, 234, 123]
[123, 456, 234, 123, 123, 456, 234, 123, 123, 456, 234, 123]


6
3

同时列表中的元素可以用in和not in来判断元素是否在列表中
123 in list3
True

list1=[123,456]
list2=[234,123]
list4=list1+list2
print(list4)
list4.reverse()#reverse将列表倒置,永久性改变
print(list4)
list4.sort()#永久性排序,归并排序
print(list4)
[123, 456, 234, 123]
[123, 234, 456, 123]
[123, 123, 234, 456]

拷贝,有个类似指针的功能,即当直接使用=赋值列表时,会类似引用(传地址),list6改变,list8也会改变,而使用list7=list6[:]时,只是将值传过去,两个列表见不存在任何关系,看到reverser和sort可以同时改变list6和list8两个列表,也有反向对list8操作去改变list6,一般还是用list7这种分片的方式去赋值

list6=[9,4,5,4,3,7,8,9,0,1]
list7=list6[:]
list8=list6
print(list7)
print(list8)
list6.sort()
print(list7)
print(list8)
list8.reverse()#list8改变的同时,list6也会进行改变
print(list6)

[9, 4, 5, 4, 3, 7, 8, 9, 0, 1]
[9, 4, 5, 4, 3, 7, 8, 9, 0, 1]
[9, 4, 5, 4, 3, 7, 8, 9, 0, 1]
[0, 1, 3, 4, 4, 5, 7, 8, 9, 9]
[9, 9, 8, 7, 5, 4, 4, 3, 1, 0]


013

元祖,tup=(1,2,3,4,5)就是被const过的列表

temp=(1)
print(type(temp))
temp2=1,2,3
print(type(temp2))
<class 'int'>
<class 'tuple'>

对于元祖和列表,8*列表,不是matlab中的每个元素都乘以8,是把现有元素扩充成8背,例如5个元素变成了40个

元祖的插入
temp[:2],指的是前两个元素,下标从0到1

temp='甲鱼','黑夜','迷途','python'
temp=temp[:2]+('小布丁',)+temp[2:]
print(temp)
('甲鱼', '黑夜', '小布丁', '迷途', 'python')

014

字符串

strl='I love fish'
print(strl[:6])
print(strl[5])
print(strl[0:5])

[0:5]实质是从0到4

I love
e
I lov

对于插入字符串,使用方法同元祖类似
strl.cassfold()把所有变成小写
strl.center(width)字符串居中,用空格填充至长度为width的新字符串
字符串使用命令很多。。需要时网上查一下

015

format方法,字符串格式化

A="{0} love {1} {2}".format("i","fish",'com')
print(A)
B="{a} love {b} {c}".format(a="I",b="bigfish",c=1)
print(B)
C='{0:.1f}{1}'.format(27.658,'GB')#0后面的.1f跟c很像,但是要加:
print(C)
i love fish com
I love bigfish 1
27.7GB

使用%c进行asc2转换

print('%c %c %c'%(97,98,99))
print('%d + %d = %d'%(4,5,4+5))
a b c
4 + 5 = 9

%o八进制, 例如 ‘%o“ % 10
%x十六进制
%d十进制
\r回车符 \t横向制表符 \n换行符

016

序列

b='I love fish'
b=list(b)
print(b)
c=max(b)
print(c)
d=[1,2,3,4,7,9]
f=max(d)
print(f)
g=min(d)
print(g)

使用序列的max或min要保证列表类型是统一的,不能既有整形又有字符型。

['I', ' ', 'l', 'o', 'v', 'e', ' ', 'f', 'i', 's', 'h']
v
9
1

sum也是,保证类型统一

d=[1,2,3,4,7,9]
h=sum(d)
print(h)
26

reversed,sorted

d=[4,2,1,8,7,9]
g=sorted(d)
h=reversed(d)
print(d)
print(g)
print(list(h))
#print(h),是不行的,
print(h)
#d.reverse()
[4, 2, 1, 8, 7, 9]
[1, 2, 4, 7, 8, 9]
[9, 7, 8, 1, 2, 4]
<list_reverseiterator object at 0x00000199360CA438>

017

def定义函数,形参实参,python中函数也可以有返回值,用return

def functon(name):
     print(name+' '+'thanks')
functon('yes')
def add(n1,n2):
    result =n1+n2
    #print(result)
    return (n1+n2)
print(add(4,10))
yes thanks
14

关键字参数,比较标准

def say(name,words):
    print(name + 'say'+ words)
say(words='world',name='Hello')
Hellosayworld

默认参数,参考c++即可,给形参定义好

def say(name='fish',words='world'):
    print(name + 'say'+ words)
say(name='Hello')
Hellosayworld

收集参数,这种情况下,实参输入多少都行,都会被par接收

def test(*par):#收集参数
    print(len(par))
    print(par[0])
test(1,2,3,4)#这种情况下,有收集参数,输入多少都行
4
1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值