第1章 变量和简单数据类型
1.变量名不能包含空格,但能使用下划线来分割其中的单词。
2.错误情况 NameError : name ‘mesage’ is not defined
类似这种变量为定义的一般分两种情况:①使用变量前忘给它赋值 ②输入变量名时拼写不正确
3.改变字符串的大小
name=‘Jack tom’
- 这些函数并不会修改初始值
4.在字符串中使用变量
f字符串用法:
【例如】 first_name='ada' last_name='lovelace' full_name=f"{first_name} {last_name}" print(full_name) 【输出】 ada lovelace
5.删除空白
6.任意两个数相除时,结果总是浮点数;无论是哪种运算,只要有操作数是浮点数,得到的结果就是浮点数
7.数字分组
数字中的下划线可以方便阅读,且不影响结果
【例如】 age=14_000_000_000 print(age) 【输出】 14000000000
8.通常使用全大写来指出应将某个变量视为常量
9.注释用 井号(#) 标识
第2章 列表简介
1.用方括号[ ]来表示列表
bicycles = ['trek','cannondale','redline','specialized']
2.索引从0开始而不是1开始,通过将索引指定为-1.可以得到列表最后一个元素
3.修改、添加和删除列表元素
(1)修改列表元素
【输入】 motorcycles = ['honda','yamaha','suzuki'] motorcycles[0] = 'ducati' print(motorcycles) 【输出】 ['ducati','yamaha','suzuki']
(2)在列表中添加元素
(3)从列表中删除元素
① 使用pop( )可以弹出一个元素,一旦使用pop( )之后,被弹出的元素就不在列表中了
② 方法remove( )只删除第一个指定的值,如果要删除的值可能在列表中出现多次,就需要使用循环
4.组织列表
sorted( )和sort( )的区别
5.确定列表的长度
使用 len( ) 可以快速获悉列表的长度
【输入】 cars = ['bmw','audi','toyota','subaru'] len(cars) 【输出】 ['ducati','yamaha','suzuki']
第3章 操作列表
1.for循环
【输入】 magicians = ['alice','david','carolina'] for magician in magicians: print(magician) 【输出】 alice david carolina
2.range函数
① 正常使用
for value in range(1,5): print(value)
会得到1,2,3,4但没有5,右边数值不会包含进去
调用函数range( )时,也可以只指定一个参数,这样它将从0开始。例如,range(6)返回数0~5
② 指定步长
【输入】 n = list(range(2,11,2)) print(n) 【输出】 [2,4,6,8,10]
上面可以通过list( )将range( )的结果直接转换为列表
range( )的第一个值代表起始值,第二个值代表终值,第三个值代表步长
③ 列表解析
【输入】 squares = [value**2 for value in range(1,11)] print(squares) 【输出】 [1,4,9,16,25,36,49,64,81,100]
3.对列表的简单计算
4.切片
① 创建切片
players[0:3]
players是一个列表,上述会得到此列表的前三个元素
② 遍历切片
for player in players[:3]: print(player)
players是一个列表,上述也会得到此列表的前三个元素
③ 复制列表
【代码一】 my_foods = ['pizza','falafel','carrot cake'] friend_foods = my_foods[:] 【代码二】 my_foods = ['pizza','falafel','carrot cake'] friend_foods = my_foods
上述两个代码不一样,代码一是将my_foods复制给了friend_foods成为两个列表;而代码二则是将friend_foods与my_foods划等号即实质上两个变量还是用的同一个列表,一方的删减会同步影响到另一方
5.元组
① 定义元组
dimensions = (200,50)
元组的值和列表不一样,其值是不可以改变的,定义元组只需将定义列表的 [ ] 改为 ( ) 即可
元组的访问时的语法与列表相同
如果定义的元组只包含一个元素,则需要在后面加上逗号
my_t = (3,)
② 修改元组变量
修改变量不能通过修改列表元素那样去修改,需要重新定义
dimensions=(200,50) print(dimensions) dimensions=(400,100) print(dimensions) 【输出】 (200,50) (400,100)
第4章 if语句
1.要判断特定的值是否已包含在列表中,可使用关键字 in ,当然也可以使用关键字 not in 来确定的值未包含在列表中
2.如果情况超过两个情形,可使用 if-elif-else 结构,其中else可省略
3.确定列表不是空的
requested_toppings = [] if requested_toppings: print('OK') else: print('Are you sure you want a plain pizza?')
第5章 字典
1.创建并访问字典
【输入】 alien_0 = {'color':'green','points': 5} print(alien_0['color']) 【输出】 green
- 键值对中,前面为键,后面为值
2.添加、修改和删除键值对
【输入】 alien_0 = {'color':'green','points': 5} #添加键值对 alien_0['x_position'] = 0 alien_0['y_position'] = 25 #修改键值对 alien_0['color'] = 'yellow' #删除键值对 del alien_0['points'] print(alien_0) 【输出】 {'color':'yellow','x_position': 0,'y_position': 25}
3.使用get( )来访问值
方法get( )的第一个参数用于指定键,是必不可少的;第二个参数为指定的键不存在时要返回的值,是可选的
【输入】 alien_0 = {'color':'green'} print(alien_0.get('points','No point value assigned.')) 【输出】 No point value assigned.
4.遍历字典
① 遍历所有键值对
for k,v in user.items(): print(k) print(v)
其中k对应的是键,而v对应的是值
② 遍历所有的键
代码一 for name in favorite.keys(): 代码二 for name in favorite:
代码一和代码二表示的意思相同,name都代表字典中的键,只是代码一表达更清楚一些
此外,可以通过 sorted( ) 来获得特定顺序排列的键列表的副本
for name in sorted(favorite.keys( )):
③ 遍历所有的值
for language in favorite.values():
language代表字典中的值
此外,通过对包含重复元素的列表调用set( ),可让Python找出列表中独一无二的元素
for language in set(favorite.values()): 【原输出】 Python C Python 【新输出】 Python C
注意:可以使用一对花括号直接创建集合,并在其中用逗号分隔元素,并且集合不会以特定的顺序存储元素
【输入】 languages = {'python','ruby','python','c'} print(languages) 【输出】 {'ruby','python','c}
5.嵌套
① 在列表中存储字典
aliens = [] for alien_number in range(30): new_alien ={'color':'green','points': 5} aliens.append(new_alien)
② 在字典中存储列表
pizza = { 'crust':'thick', 'toppings':['mushrooms','extra cheese'], }
③ 在字典中存储字典
users = { 'aeinstein':{ 'first':'albert', 'last':'einstein', 'location':'princeton', }, 'mcurie':{ 'first':'marie', 'last':'curie', 'location':'paris', }, }
第6章 用户输入和while循环
1.函数input( ) 的工作原理
message = input('Tell me something,and i will repeat it back to you:') print(message)
- 用input( )获得的值是由字符串表示,如果想将输入转化为数值的话要用到int( )函数
height = int(height)
2.求模运算符 (%)
>>> 4 % 3 1 >>> 5 % 3 2
3.使用break退出循环
要立即退出循环,不再运行循环中余下的代码,也不管条件测试的结果如何,可使用break语句
4.在循环中使用continue
使用后会返回循环开头,并跳过continue之后的代码