字符串处理
单双引号一样
.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')