20200103
第四章.操作列表
1.删除空白
test1.rstrip() ——删除右边空白
lstrip,strip ——删除左边/全部空白
2.创建列表
bicycles=['a','b']
注:索引从0开始,-1 -2表示倒数第一,第二个数
从列表中添加元素: 1.在列表末尾添加
bicycles.append('c')
2.在列表中插入元素
bicycles.insert(0,'d') 表示在索引0出添加空间
从列表中删除元素 1.del语句
del bicycles[0]
2.pop()语句
popped_bicycle=bicycles.pop() 存储的是列表中最后一项
popped_bicycle=bicycles.pop(0) 也可以存储列表的第一项
3.根据值删除元素
bicycles.remove('a')
3.组织列表
1.使用方法sort对列表永久性排列
bicycles.sort() 按字母顺序排列
bicycles.sort(reverse=True) 按字母顺序相反排序
2.使用函数sorted()对列表进行临时排列
sorted(bicycles)
3.倒着打印列表——方法reverse()
bicycles.reverse()
4.确定列表长度——函数len()
len(bicycles)
4.遍历整个列表(for循环)
magicians=['a','b','c']
for magician in magicians:
print(magician) (这里需要有缩进)
print('Thank you.') (此处没有缩进,代表for循环结束后的操作)
20200104
5.创建数字列表
1.使用函数range()
for value in range(1,5):
print(value) 将生成1 2 3 4
range()函数还可以指定步长——range(2,11,2)——将从2开始数,不断加2(2,4,6,8,10)
注:range()函数从第一个指定的数开始数,并在到达第二个指定的数后停止,因此不包括最后一个数
2.使用range() 创建数字列表 使用函数list()将range()jieguo 直接转化为列表
numbers = list(range(1,6))
3.对数字列表执行简单的统计计算
min() max() sum()
4.列表解析
squares=[value**2 for value in range(1,11)]
print(squares)
>>[1,4,9,16,25,36,49,64,81,100]
6.使用列表的一部分
1.切片
print(players[1:3]) 与range()类似,将打印第一,第二个元素
print(players[-3:]) 将打印最后三个元素
2.复制列表
my_foods=['a','b','c']
friend_foods=my_foods[:] 省略起始索引和终止索引
7.元组——不可变的列表叫元组
1.定义元组 使用圆括号()
2.遍历元组的所有值
3.修改元组变量 重新定义元组
dimensions=(200,50)
dimensions=(400,100)
第五章.if语句
1.检查
1.使用and和or检查多个条件
2.检查特定值是否包含在列表中
'mushrooms' in list
3.检查特定值是否不包含在列表中
if users not in banned_users:
2.if语句
1.if-else语句
if age >=18:
print()
else:
print()
2.if-elif-else结构
if age<14:
elif:age<18:
else:
注:elif 可以是多个;else可以省略,用elif代替;if-elif-else语句中有一个测试通过了,将跳过余下测试
2.if和列表
1.确定列表不是空的:
requested_toppings=[]
if requested_toppings:
print()
else:
print("列表为空") Python在列表至少包含一个元素的时候返回True,为空时返回Flase
第六章.字典
字典是一系列键-值对。每个键都与一个值相关联,可以使用键来访问相关联的值
例:alien_0 = {'color' : 'green', 'points' :5}
1.访问字典中的值 依此指定字典名和在方括号里面的键
print(alien_0['color'])
2.添加键_值对 字典是一种动态结构,可以随时添加键-值对
alien_0 = {'color' : 'green', 'points' :5}
alien_0['x_position']=0
alien_0['y_position']=25 因此,有时候可以先创建一个空字典alien_0 = {}
3.删除键-值对 使用del语句
del alien_0['color']
4.定义多行字典 注意缩进和逗号
favorite_language = {
'jen' : 'python',
'sarah' : 'c',
}
5.遍历字典
1.方法items() items() 方法的遍历:items() 方法把字典中每对 key 和 value 组成一个元组,并把这些元组放在列表中返回。
例:d = {'one': 1, 'two': 2, 'three': 3}
>>> d.items()
dict_items([('one', 1), ('two', 2), ('three', 3)])
2.使用for循环遍历字典
user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key, value in user_0.items():
print('\nKey: ' + key)
print('Value: '+ value)
3.方法keys();values for name in user_0.keys() 提取字典中的所有键,并将他们存储到变量name中
for language in user_0.values() 提取字典中的所有值,并将他们存储到变量language中
4.按顺序遍历字典中的所有值 通常情况下获取字典的元素时顺序是不可预测的,要以特定的顺序返回元素,一种方法时在for循环中对返回的键进行排序,sorted()
for name in sorted(favorite_language.keys()):
5.函数set() 可以让python找出列表中独一无二的元素 即排除相同的元素
for language in set(favorite_language.values()):
20200105
6.嵌套
1.字典列表
alien_0 = {'color': 'green'}
alien_1 = {'color': 'red'}
aliens = [alien_0, alien_1]
2.在字典中存储列表
pizza = {
'crust': 'thick',
'toppings': ['mushroooms', 'extra cheese'],
}
#概述所点的比萨
print('You ordered a '+ pizza['crust'] + '-crust pizza' +
'with the following toppings:')
for topping in pizza['toppings']:
print('\t'+topping)
3.在字典中存储字典
users = {
'aeinstein' :{
'first': 'albert',
'last': 'einstein',
'location': 'princeton',
},
'mcurie' :{
'first': 'marie',
'last': 'curie',
'location': 'paris',
}
}
for username,user_info in users.items(): 这里的值“user_info”是一个字典
print("\nUsername: "+username)
full_name = user_info['first'].title() +' '+user_info['last'].title() 访问内部字典
location = user_info['location'].title()
print('\tFull_name: '+ full_name)
print('\tLocation: ' + location)
第七章.用户输入和while循环
1.函数input()工作原理
函数input()接受一个参数,即要向用户显示的提示或说明,让用户知道该怎么做。
message = input("Tell me something, and I will repeat it back to you: ") 变量存储在message; 用户输入回车后继续运行
print(message)
2.函数int() 将数字的字符串表示转化为数值表示
3.求模运算符 % 将两个数相除并返回余数
4.while循环
1.使用while循环 python首次执行代码的时候需有可供检查的东西因此可将message的初始值设置为空字符串
2.使用标志 定义一个变量,用于判断整个程序是否处于活动状态
active = True 简化while语句
while active:
message.....
if message == 'quit' :
active = Flase
3.使用break退出循环 也可使用break语句退出遍历列表或字典的for循环
if city == 'quit':
break
4.使用continue循环 忽略余下代码,并返回到循环的开头
5.避免无限循环 用Ctrl+C 关闭
5.使用while循环来处理列表和字典 可以在遍历列表的同时对其进行修改
1.在列表之间移动元素
while unconfirmed_users: 表示while循环将不断运行直到列表的unconfirmed_users为空
2.删除包含特定值的所有元素
3.使用用户输入来填充字典
while polling_active :
name = input("What's your name? ")
response = input("What's your favorite mountain?")
#将答案存储在字典中
responses[name] = response
第八章.函数
1.定义函数
def greet_user(username): 引号后的要缩进! 括号内的为形参(parameter)
'''显示简单的问候语''' 描述函数是做什么的,用3引号括起
print("Hello, " + username.title() + '!')
greet_user('jesse') 括号内为实参(argument)
2.传递实参
1.位置实参 要求实参的顺序与形参的顺序相同
2.关键字实参
def describe_pet(animal_type, pet_name):
。。。。。
describe_pet(animal_type='hamster', pet_name='harry')
3.返回值
4.让实参变成可选的 可以给非必须的形参指定一个默认值——空字符串’ ‘
5.返回字典 在函数定义中,可以新增一个可选形参age
def bulid_person(first_name,last_name,age = ' '):
'''返回一个字典,其中包含一个人的信息'''
person = {'first_name': 'first_name','last_name':'last_name'}
if age:
person['age'] = age
return person
musician = bulid_person('jimi','hendrix',age=27)
print(musician)
6.禁止函数修改列表
function_name(list_name[:])
切片表示法[:]创建列表的副本,函数所做的修改不会影响到列表本身
3.传递任意数量的实参
1.def make_pizza(*toppings): 星号让python创建一个名为toppings的空元组
注:可以结合时候位置实参和任意数量实参
def make_pizza(size,*toppings):
2.**user_info 创建一个名为user_info的空字典
调用时: bulid_profile(location = 'princeton',field = 'phsics')
4.将函数存储在模块中——import语句
创建名为pizza.py的文件,在pizza.py的目录中创建另一个名为making_pizza.py的文件:
import pizza 随后即可调用pizza.py中的定义的所有函数
指定导入的模块的名称pizza和函数名make_pizza()并用句点分割他们——pizza.make_pizza()
5.导入特定的函数
from module_name import function_0, function_1,function_2:
import pizza import * 使用星号导入模块中的所有函数(慎用)
用逗号分隔函数名
6.使用as给函数,模块指定别名
from module_name import function_name as fn
import module_name as mn
7.函数编写指南
给形参指定默认值或是函数调用中的关键字实参,等号两边不要有空格
例如def function_name(parameter_0,parameter_1='default value')
def function_name(value_0,parameter_1='value)