1.起步
print("Hello world")
2.变量和简单的数据类型
1.变量
-
声明:
a="heloo"
2.字符串
- 用单引号和双引号都可
a="hhhh";
a.title(); #首字母大写
a.upper() #全部大写
a.lowper() #全部小写
b=a+"ooo" #字符串合并用+
c="mm "
c.rstrip() #删除空白
d=" dad"
d.lstrip() #删除前面的空白
d.strip() #删除后面的空白
# 但删除并不是真正的删除
d=" hjhsad"
print(d.rstirp); #显示hjhsad
print(d) #显示 hjsad
3.数字
-
python支持正常的加减乘除
1*2 # 2 1/2 # 1.5 3+2 # 5 3-2 # 1
-
要注意不同的浮点数相加可能不会得到正确答案
0.1+0.2 # 0.30000000000000004
-
使用str()避免类型错误
month=1 day=2 print("生日是"+str(month)+"月"+str(day)+"日") #生日是1月2日
4. 注释
-
单行注释用 #
#这是一个单行注释
-
多行注释用三个单引号或双引号
''' 这是一个多行注释 ''' """ 这是一个多行注释 """
3.列表
1.声明
a=["hahdh","sdas","red",120]
print(a) #['hahdh', 'sdas', 'red', 120]
2. 访问列表元素
a=["hahdh","sdas","red",120]
print(a[0].upper()) #HAHDH
print(a[-1]) # 120 a[-1]是最后一个元素
3.修改,添加和删除元素
name=["lihua","xiaoming","xiaogou","xiaohong"]
# 插入元素
name.append("xiaohu") #在末尾添加元素 "xiaohu"
name.insert(4,"hhh") #4是下标,在name[4]的地方添加元素"hhh"原来的元素往后移
# 删除元素
del name[3] # 删除name[3]所在的元素
a=name.pop(3) #删除name[3]所在元素的同时,将该删除元素赋给a
name.remove("lihua") '''删除值为"lihua"的元素,但他只删除第一个,如果后面还有值为"lihua"的元素就需要用循环来做'''
4.组织列表
1. 排序
-
永久性排序,使用sort()
a=['a','c','b','f','e'] print(a) #['a', 'c', 'b', 'f', 'e'] a.sort() #使用sort是顺序排列从a-z print(a) #['a', 'b', 'c', 'e', 'f'] b=['a','c','b','f','e'] print(b) #['a', 'c', 'b', 'f', 'e'] b.sort(reverse=True) #使用sort(reverse=True)是逆序排列 从z-a print(b) #['f', 'e', 'c', 'b', 'a']
-
临时性排序,sorted()
a=['a','c','b','f','e'] print(sorted(a)) #['a', 'b', 'c', 'e', 'f'] 顺序 print(a) #['a', 'c', 'b', 'f', 'e'] print(sorted(a,reverse=True)) #['f', 'e', 'c', 'b', 'a'] 逆序 print(a) #['a', 'c', 'b', 'f', 'e']
-
要反转列表元素的排列顺序,可使用方法reverse() 。
a=['a','c','b','f','e'] print(a) #['a', 'c', 'b', 'f', 'e'] a.reverse() #反转列表排列顺序 print(a) #['e', 'f', 'b', 'c', 'a']
- 注意,reverse() 不是指按与字母顺序相反的顺序排列列表元素,而只 是反转列表元素的排列顺序
- 方法reverse() 永久性地修改列表元素的排列顺序,但可随时恢复到原 来的排列顺序,为此只需对列表再次调用reverse() 即可
2.确定列表长度
-
使用函数len() 可快速获悉列表的长度
a=['a','c','b','f','e'] c=len(a) print(c) #5
5.操作列表
1.遍历整个列表
-
for循环
for+变量+in +遍历结构: 语句块1 else: 语句2
-
遍历列表
a=['a','c','b','f','e'] for i in a: print(i)
2.创建数字列表
-
使用函数range()
# 打印数字 for i in range(1,5): print(i) # i 实际会显示 1-4
- 函数range() 让Python从你指定的第一个值开 始数,并在到达你指定的第二个值后停止,因此输出不包含第二个值
-
使用函数range()创建数字列表
a=list(range(1,5)) print(a) #[1, 2, 3, 4]
-
使用函数range() 时,还可指定步长
# 打印十以内的偶数 a=list(range(0,10,2)) # 2是步长 print(a) #[0, 2, 4, 6, 8]
-
打印1-10的平方
a=[] #创建空列表 for i in range(1,11): a.append(i**2) print(a) #[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
-
-
对数字列表执行简单的统计计算
a=list(range(1,11)) print(max(a)) #最大值 print(min(a)) #最小值 print(sum(a)) #求和
-
列表解析
# 用列表解析打印1-10的平方 a=[i**2 for i in range(1,11)]
3.使用列表的一部分
-
切片:
c=list(rang(1,10)) print(c[0:4]) #[1, 2, 3, 4] print(c[:5]) #[1, 2, 3, 4, 5] print(c[2:]) #[3, 4, 5, 6, 7, 8, 9] print(c[:]) #[1, 2, 3, 4, 5, 6, 7, 8, 9] print(c[-3:]) #[7,8,9] 打印后面三个元素
- 要创建切片,可指定要使用的第一个元素和最后一个元素的索引(Python在到达你指定的第二个索引前面的元素后停止)
- 如果你没有指定第一个索引,Python将自动从列表开头开始
- 如果你没有指定第二个索引,Python将要让切片终止于列表末尾,且最后一个元素打印
- 如果两个索引都省略,则打印全列表
- 负数索引返回离列表末尾相应距离的元素,因此 你可以输出列表末尾的任何切片
-
遍历切片
# 获取列表的最大值 c=list(range(0,11)) c.sort(reverse=True) print(c[0:3]) for a in c[0:3]: print(a)
-
复制列表
c=list(range(1,11)) d=c[:] print(c) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(d) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
4.例题
-
打印消息“The first three items in the list are:”,再使用切片来打 印列表的前三个元素
s='The first three items in the list are:' d=[] b=0 for a in range(len(s)): if s[a]==' ': d.append(s[b:a]) b=a print(d[0:3])
5.元组
-
定义:在python中将不能修改的值称为不可变的,而不可变的列表成为元组
-
声明:
a=(111,222)
-
遍历元组
for i in a: print(i)
-
修改元组的值
a=(111,222) a=(111,333)
- 无法单独修改元组元素
- 但可以重新定义该元组
-
小练习-自助餐
# 自助餐小练习 a=('西红柿炒鸡蛋','红烧茄子','兰州拉面','红烧肉','鱼香肉丝') # 显示当前菜单 print('当前菜单为:') for i in a: print("\t\t"+i) # 修改菜单 a=('可乐鸡翅','红烧茄子','蛋炒饭','红烧肉','鱼香肉丝') # 显示修改的菜单 print('修改后的菜单为:') for i in a: print("\t\t\t"+i)
6.设置代码格式
- 缩进用四个空格
- 每行的行长不超过80个字符
- 合理使用空格组织程序
6.If 语句
-
简单的例子:
a=('可乐鸡翅','红烧茄子','蛋炒饭','红烧肉','鱼香肉丝') i='鱼香肉丝' if i == '可乐鸡翅': print('可乐鸡翅的价格为:20') elif i == '红烧茄子': print('红烧茄子的价格为:30') elif i=='蛋炒饭': print('蛋炒饭的价格为:15') elif i=='红烧肉': print('红烧肉的价格为:40') else: print('鱼香肉丝的价格为:25')