python笔记(一)
- 2020 年 1 月 14 日
- 笔记
字符串处理 单双引号一样 .title():将每个单词的首字母变为大写,其余小写(不管原来是什么样) .upper():将字符串中所有字母变为大写 .lower():将字符串中所有字母变为小写 .strip():删除行首和行末的空白(空格和制表符)(直接输入变量返回值才能看到,否则看不到效果) .lstrip():删除左边,即行首 .rstrip():删除友边,即行末 合并字符串直接用加号:+ 转义(不管单双引号都生效): t:制表符 n:换行
字符串反转: a="abcdef" a[::-1]:“fedcba”
变量类型转换 整型或其他 –> 字符串:str(变量)
注释 #:单行注释 """ """:多行注释
列表 赋值:VAR=["aa","bb"] 可以先创建空列表 返回最后一个:VAR[-1] 在末尾添加:.append("aaa") 在任意位置添加:.insert(索引位置,"ccc") 删除:del VAR[索引位置](后边的索引会顶替删除的索引) .remove(值):根据值删除,只删除一次就停止,如果删除多个同样的值需要用循环判断是否删除干净 弹出列表中最后一个元素:.pop()(弹出的元素可使用,但是不会在列表中存在了) 删除和弹出的区别:删除之后不可使用,弹出能够使用这个弹出的元素
排序: .sort():对列表永久性排序(按照首字母) 反向排序,传递参数:.sort(reverse=True) sorted(列表):临时排序,返回排序好的列表,但是对原来的列表无影响 临时反向排序:sorted(列表,reverse=True) 倒着打印列表:.reverse() 反转列表:reverse(列表) 获取列表长度:len(列表) 遍历列表:for i in 列表: 最好的命名方式,列表取复数,遍历变量取单数,即: for cat in cats: 创建数字列表: range():生成一串数字 range(1,6):生成1到5(没有6) range(2,11,2):跳着生成 在生成一串数字之后,使用list()将其转换成列表: list(range(1,6)) 上面的可以简写为一行:squares = [value**2 for value in range(1,11)] 找极值: min(digits):最小值 max(digits):最大值 sum(digits):求和 列表切片: 列表[1:4] :打印从1开始到4的前边3 列表[:4] :如果不写起始则从头开始 列表[1:] :如果不写结束则一直到末尾 列表[-5:] :打印出最后5个元素 列表切片可用于遍历一部分列表 复制列表: 列表2=列表1[:](可以指定复制的范围) 后头必须有方括号,否则是两个名字指向同一个列表,不是复制
元组:不可修改的列表(使用方法同列表) 元组=(200,50) print(元组[0])
不能单独修改一个元素的值,但是可以整体赋值: dimensions = (200, 50) dimensions = (400, 100)
编程标准: 缩进为四个空格 一行最长最好不超过80个字符 空行不要滥用
if语句 if VAR1=VAR2: COMMAND else: COMMAND
或者写成: VAR1 == VAR2
在判断时区分大小写,如果VAR1位大写,VAR2为小写,则if返回值为FALSE 如果不想区分大小写,可以先使用“.lower()”都转换为小写再比,而且不会影响原来变量中的内容 比较符号: 等于:== 不等于:!= 大小(等)于:>、<、<=、>= 条件与:and(and两边要有空格,和变量分开)(and两边的潘丹条件可使用小括号包裹起来) 条件或:or 判断一个特定的值是否在列表中:in 'value' in lists 不包含 not in 布尔值:True、False(大小写固定,必须首字母大写)
if格式:(elif和else部分都可以省略) if age < 4: print("Your admission cost is $0.") elif age < 18: print("Your admission cost is $5.") else: print("Your admission cost is $10.")
使用实例:(判断是否在列表中) requested_toppings = ['mushrooms', 'extra cheese'] if 'mushrooms' in requested_toppings: print("Adding mushrooms.") if 'pepperoni' in requested_toppings: print("Adding pepperoni.") if 'extra cheese' in requested_toppings: print("Adding extra cheese.")
if lists:(判断列表是否为空)
字典(没有顺序,只关心键值对的关联关系) 赋值: alien_0 = {}(创建空字典) alien_0 = {'color': 'green', 'points': 5} (批量赋值) alien_0['x_position'] = 0 (离散赋值) 使用: print(alien_0['color'])(打印单个) print(alien_0) (打印全部)
删除: del alien_0['points'] 遍历字典: user_0 = { 'username': 'efermi', 'first': 'enrico', 'last': 'fermi', } for key, value in user_0.items(): (使用items函数遍历键值对) (如果没使用items函数,且只有一个变量的情况下输出的是索引) for i in lists.keys(): (遍历索引) for i in lists.values():(遍历值) (key和value这两个单词可以自己任意起) 字典无序,对其排序: for name in sorted(favorite_languages.keys()): 剔除重复: for language in set(favorite_languages.values()): 字典嵌套: 将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。你可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典 alien_0 = {'color': 'green', 'points': 5} alien_1 = {'color': 'yellow', 'points': 10} alien_2 = {'color': 'red', 'points': 15} aliens = [alien_0, alien_1, alien_2] for alien in aliens: print(alien) 输出结果: {'color': 'green', 'points': 5} {'color': 'yellow', 'points': 10} {'color': 'red', 'points': 15} 动态创建字典保存在列表中: aliens = [] for alien_number in range(30): new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'} aliens.append(new_alien) 然后可以通过遍历列表来修改字典中的内容 列表保存在字典中: favorite_languages = { 'jen': ['python', 'ruby'], 'sarah': ['c'], 'edward': ['ruby', 'go'], 'phil': ['python', 'haskell'], } for name, languages in favorite_languages.items(): print("n" + name.title() + "'s favorite languages are:") for language in languages:(循环中包含循环) print("t" + language.title()) 字典中保存字典:(最好每个子字典中所包含的值都一样,这样方便管理) users = { 'aeinstein': { 'first': 'albert', 'last': 'einstein', 'location': 'princeton', }, 'mcurie': { 'first': 'marie', 'last': 'curie', 'location': 'paris', }, }
输入: VAR_STR=input("这里写一些提示信息")(这是python3,在python2中使用raw_input) 有时候提示是信息超过一行,可以使用变量来存储(n是换行) VAR_INT=int(VAR_STR)(将字符串类型转换成整型)
while循环: while 判断条件:(可以是True或False(首字母大写)) continue break while和列表搭配: while lists:(当列表空时结束) lists.pop()(使用pop函数输出,或者使用remove,不然死循环) pop:弹出列表中最后一个元素 remove:删除列表中的值,但只删第一个,后头再有重复的不管,当想要删除列表中多个重复的值时,使用while来进行删除 while 'cat' in pets: pets.remove('cat')