小编在之前已经介绍过python的基础:字符串、列表、for循环等等,本篇文章主要来介绍一下python的if语句、字典、方法引用等,以便快速使用python处理一些数据问题。Python现在的使用比较广泛,对于新手来说入门比较简单,但是如果要深度学习,我们需要学习的东西有很多。
1、If语句
if语句后有条件表达式,如果条件表达式为True,则执行if后的语句,否则,执行else后的语句。Else不是必须的,如果没有else,条件为false的时候,跳过if后的语句块。还有一种语句类型为if-elif-else语句。If-else语句中如果满足if条件,else后的语句就不会执行。
示例:
条件表达式:条件表达式会有一个结果,True或者False。如果需要多个条件可以用or或者and添加多个条件。如果用or,只要有一个表达式结果为True,则表达式结果为True,如果用and,需要所有结果为True,表达式才为True。
for ss in namelist:
if ss == 'admin' or ss == 'Tom':
print("Hello %r,would you like to see a status report?" %ss)
列表是否为空:判断列表是否为空,可以用if lists,突然列表为空,返回False,如果不为空返回True。
emptelist = []
if emptelist:
print ("list is not empty!")
else:
print ("list is empty")
元素是否在列表中:判断元素是否包含在list中,可以用if ss in list,如果list包含元素返回True,否则返回False。
lists = ["audi","subaru","test"]
if "test" in lists:
print("test in lists")
1、字典
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值key对应一个value,中间用冒号:隔开,value可以是任意对象,字典可以跟json格式数据进行相互转换,在开发中比较常用。
Dicts = {‘key1’:’value1’,’key2’:’value2’}
Key的值是唯一的,不可以重复,值可以取任何数据类型,但键的值不可变,因此在生成字典的时候,可以用数字,字符串或元组充当,而用列表就不行。
创建:创建字典,可以直接创建,也可以用fromkeys方法创建。
dicts = {}
dicts['name'] = 'verchy'
print(dicts)
访问字典中对应键的值:字典中可以用key值,访问对应的value值。
name = dicts['name']
print(name)
修改字典值:可以直接通过key赋值,也可以直接增加键-值对,如果同一个key被赋值两次,则记住后一次。
dicts1['name'] = 'Verchy'
dicts1['age'] = '18'
dicts1['score'] = '101'
print(dicts1)
删除字典值:可以通过del dict直接删除字典,也可以通过del dict[‘key’]删除对应的key值。
dicts['ccc'] = 'IIini'
print(dicts)
del dicts['ccc']
print(dicts)
del dicts
print(dicts)
基本函数:
fromkeys:生成字典,如果后面没有值,字典的value全部为None
seq = ('name','age','address')
dicts1 = dict.fromkeys(seq,111)
print(dicts1)
key in dict:键是否在列表中,如果键在字典dict里返回true,否则返回false
if 'name' in dicts1:
print("name in dict keys")
else:
print("name not dict key")
dict.items:返回可遍历的(键, 值) 元组数组。
items = dicts1.items()
print(items)
for i,j in items:
print(i , ": " , j)
dict.value():返回一个迭代器,可以使用 list() 来转换为列表,列表为字典中的所有值。
values = dicts1.values()
print(list(values))
dict.keys():返回字典的所有key值
keys = dicts1.keys()
print(list(keys))
popitem():删除字典键-值对,默认删除最后一个
pop_item = dicts1.popitem()
print(pop_item)
print(dicts1)
1、函数
在编程过程中会出现有些代码,需要重复利用,这些代码我们就可以提取出来,封装成函数,在代码中可以直接调用。函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数定义规则:
(1) 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
(2) 传入的参数,放入圆括号中
(3) 函数定义语句结尾,加上冒号,函数内容以冒号开始,并缩进
(4) return [表达式] 结束函数,return表示函数返回值,调用函数后得到return的值,如果不带return,则默认返回值为none。下面献上一段小代码:
def test_baidu(browser):
if browser == "chrome":
driver = webdriver.Chrome()
elif browser == "firefox":
driver = webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.quit()
if __name__ == '__main__':
test_baidu('chrome')
函数传递的参数也分几种,一般常用的有:必需参数、默认参数、不定长参数。
必需参数:函数传参必需与定义的参数一致,否则会报错。
def demo(a,b):
c = a + b
return c
a = 3
b = 5
c = demo(a,b)
print(c)
默认参数:参数有默认值,如果函数调用的时候传入数值,则使用传入值,如果没有传入该参数,则使用默认值。
def demo(a,b=6):
c = a + b
return c
a = 3
d = demo(a)
print(d)
不定长参数:可能需要一个函数能处理比当初声明时更多的参数,这些参数叫做不定长参数。加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。如果调用时,没有指定该参数,则参数为空。
def demo1(a,*b):
print(a)
print(b)
ss = demo1(1,2,3)
匿名函数:所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。python 使用 lambda 来创建匿名函数。lambda 只是一个表达式,lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。
count = lambda lists : len(lists)
lists = ['s',1,2,3]
print(count(lists))
练习题:
1、打印从1—99的数相加的和
打印9*9乘法表
下篇文章会附上本周练习代码。
上周习题代码:输入三边是否形成三角形
length1 = int(input("Please input a length1: "))
length2 = int(input("Please input a length2: "))
length3 = int(input("Please input a length3: "))
if length1
print("The edge is not made triangle")
elif length1 + length2
print("The edge is not made triangle")
elif length1 - length2 >= length3 or length2 - length3 >= length1 or length1 - length3 >= length2:
print("The edge is not made triangle")
else:
print("The edge is made triangle")
打印图形
for i in range(4):
for j in range(2 - i + 1):
print(" ",end='')
for k in range(2 * i + 1):
print('*',end='')
print('\n')
for i in reversed(range(3)):
for j in range(2 - i + 1):
stdout.write(' ')
for k in range(2 * i + 1):
stdout.write('*')
print("\n")
领取专属 10元无门槛券
私享最新 技术干货