Python100天从新手到大师|①Python语言基础&进阶&Web前端入门
个人向笔记摘录
Make English as your working language. (让英语成为你的工作语言)
Practice makes perfect. (熟能生巧)
All experience comes from mistakes. (所有的经验都源于你犯过的错误)
Don't be one of the leeches. (不要当伸手党)
Either outstanding or out. (要么出众,要么出局)
1 Python语言基础
1.初识Python
2.语言元素
硬性规则:
变量名由字母(广义的Unicode字符,不包括特殊字符)、数字和下划线构成,数字不能开头。
大小写敏感(大写的a和小写的A是两个不同的变量)。
不要跟关键字(有特殊含义的单词,后面会讲到)和系统保留字(如函数、模块等的名字)冲突。
PEP 8要求:
用小写字母拼写,多个单词用下划线连接。
受保护的实例属性用单个下划线开头(后面会讲到)。
私有的实例属性用两个下划线开头(后面会讲到)。
见名知意也很重要
3.分支结构
value = float(input('请输入长度: '))
unit = input('请输入单位: ')
if unit == 'in' or unit == '英寸':
print('%f英寸 = %f厘米' % (value, value * 2.54))
elif unit == 'cm' or unit == '厘米':
print('%f厘米 = %f英寸' % (value, value / 2.54))
else:
print('请输入有效的单位')
a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))
if a + b > c and a + c > b and b + c > a:
print('周长: %f' % (a + b + c))
p = (a + b + c) / 2
area = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print('面积: %f' % (area))
else:
print('不能构成三角形')
4.循环结构
"""
输入两个正整数计算它们的最大公约数和最小公倍数
Version: 0.1
Author: 骆昊
Date: 2018-03-01
"""
x = int(input('x = '))
y = int(input('y = '))
# 如果x大于y就交换x和y的值
if x > y:
# 通过下面的操作将y的值赋给x, 将x的值赋给y
x, y = y, x
# 从两个数中较小的数开始做递减的循环
for factor in range(x, 0, -1):
if x % factor == 0 and y % factor == 0:
print('%d和%d的最大公约数是%d' % (x, y, factor))
print('%d和%d的最小公倍数是%d' % (x, y, x * y // factor))
break
| 运算符 | 描述 |
|---|---|
[] [:] |
下标,切片 |
** |
指数 |
~ + - |
按位取反, 正负号 |
* / % // |
乘,除,模,整除 |
+ - |
加,减 |
>> << |
右移,左移 |
& |
按位与 |
^ | |
按位异或,按位或 |
<= < > >= |
小于等于,小于,大于,大于等于 |
== != |
等于,不等于 |
is is not |
身份运算符 |
in not in |
成员运算符 |
not or and |
逻辑运算符 |
= += -= *= /= %= //= **= &= ` |
= ^=` `>>=` `<<=` |
说明: 在实际开发中,如果搞不清楚运算符的优先级,可以使用括号来确保运算的执行顺序。
5.构造程序逻辑
尝试用所学知识去解决现实中的问题
锻炼自己把用人类自然语言描述的算法(解决问题的方法和步骤)翻译成Python代码的能力
必须通过大量的练习才能达成
常用小技巧
# 取三位数的个位、十位和百位
low = num % 10
mid = num // 10 % 10
high = num // 100
# 正整数的反转
num = int(input('num = '))
reversed_num = 0
while num > 0:
reversed_num = reversed_num * 10 + num % 10
num //= 10
print(reversed_num)
6.函数和模块的使用
7.字符串和常用数据结构
列表
items3 = [100, 12.3, 'Python', True]
items4 = list(range(1, 10))
items5 = list('hello')
猜猜结果?
print(items3) # [100, 12.3, 'Python', True]
print(items4) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(items5) # ['h', 'e', 'l', 'l', 'o']
判断存在性
items7 = ['Python', 'Java', 'JavaScript']
print('C++' not in items7) # True
print('Python' not in items7) # False
操作
languages = ['Python', 'Java', 'C++']
languages.append('JavaScript') #加到最后
languages.insert(1, 'SQL') #插入指定位置
if 'Java' in languages:
languages.remove('Java') #删除
print(languages) # ['Python', 'SQL', C++', 'JavaScript']
languages.pop() #弹出第一个
temp = languages.pop(1) #弹出第一个,会返回删除值
print(temp) # SQL
languages.clear() #删除所有
print(languages) # []
items = ['Python', 'Java', 'C++']
del items[1] #删除索引为1的,也就是第二个,这个不会,且性能更好
print(items) # ['Python', 'C++']
查找
print(items.index('Python')) # 0
# 从索引位置1开始查找'Python'
print(items.index('Python', 1)) # 5
# 从索引位置3开始查找'Java'
print(items.index('Java', 3)) # ValueError: 'Java' is not in list
print(items.count('Python')) # 2
排序
items.sort() #正排
items.reverse() #反转排序

浙公网安备 33010602011771号