讨论/技术交流/Python学习笔记/

and和or
在Python中,and和or的用法有点奇怪,不想C++中的位运算和逻辑判断公用&和|。

and
倘若两侧都为真,则返回右侧的值,否则返回假

or
倘若两侧都为真,则返回左侧的值,否则返回假

三目运算符
在C++中有形如?:的三目运算符,然而在Python中,三目运算是使用if和else达成的,例如:

a if a>b else b
表达的意思为:若 a>b 则为 a ,否则则为 b ,意为取max

可以巧妙利用如:

a=int(input())
b=int(input())
print("a>b") if a>b else print("a<b") if a<b else print("a=b")
实现一个简单的判断大小的程序

List
概念
Python中的list基本上相当于一个强化版的C++中的数组。

下标
和数组类似,序列也是从0开始编号,到 len−1 之间存储有效信息。但不同于C++的是,Python中的List可以从 −len 到 len−1 为下标进行访问,例如对一个长度为5的序列a来说,a[4]=a[4-len]=a[-1]

基本操作
切片
序列切片是一种简单的输出序列元素的方法,基本格式为list_name[ start : end : step ]

例如:

a=[1,2,3,4,5,6,7,8,9,0]
print(a[:5]) #输出0~4
print(a[:]) #输出整个序列
print(a[::2]) #以每三个输出一个
相加
相同类型的序列可以直接相加

a=[1,2,3]
b=[4,5,6]
c=a+b
print(c[:])
相乘
任意类型的序列List都可以通过 List×n 得到一个重复 n 次的新序列,例如:

a=[1,2,3]
b=a*3
print(b[:])
in
和C++的find函数相似,Python中的in可以检查某个元素是否在序列中,返回True或False,例如:

a=[1,2,3]
print(1 in a)
此外,还有not in函数,作用显然

max & min
用于得到序列中最大和最小的元素

len
用于得到序列的长度

str
将序列转换为字符串

a=[1,2,3]
b=str(a)
print(b," ",type(b))
list
将元组转换为序列
例如:

a=(1,2,3) #元组和struct或者class有点像,但是不支持修改元素值
b=list(a)
print(b," ",type(b))

共 0 个回复
暂无回复