Python注释
单行注释
# 这是一个单行注释print("test")
多行注释
'''这里就是python的多行注释方式可以直接分行进行注释操作本质上是字符串'''import thisprint("hello world")
特殊注释
!/usr/bin/python3
指定解释器的版本encoding=utf-8
Python变量
变量使用
定义变量
# arg = vala = 1# arg1, arg2 = 1, 2a, b = 1, 2# arg1 = arg2 = vala = b = 3
使用变量的好处
使用变量注意事项
一个变量只能引用一个数值
- 命名规范
- 数字、字母、下划线
- 见名知义
- 驼峰命名
- 只能使用非关键字
- 区分大小写
-
Python数据类型简介
常用数据类型
Numbers(数值类型)
- Bool(布尔类型)
- String(字符串)
- List(列表)
- Set(集合)
- Tuple(元组)
- Dictory(字典)
- NoneType(空类型)
类型转换
num = "6"print(4 + int(num)) # 10print(str(4) + num) # 46
Python运算符
算术运算符
```python+ 加法运算符
print(1 + 2) # 3 print(“1” + “2”) # 12 print([1, 2] + [3, 4]) # [1, 2, 3, 4]
- 减法运算符
print(1 - 2) # -1
* 乘法运算符
print(2 * 3) # 6
** 幂运算符
m, n = 2, 3 print(m * n) # 22*2/8
/ 除法运算符
print(5 / 2) # 2.5
// 整除运算
print(5 // 2) # 2 print(5.0 // 2) # 2.0 print(5.99 // 2) # 2.0
% 求模运算
print(5 % 2) # 1
<a name="a8a3a095"></a>### 复合运算符```pythonnum = 2num = num + 3# 与下面这种方式等价,且效率更高num += 3
比较运算符
# 布尔类型是一种单独的类型res = 10 != 2print(res) #True# a, b指向同一块内存a = 1b = 1print(a == b) #Trueprint(a is b) #True#a, b指向不同的内存#可以使用id(arg)来查看变量所在的内存区域a = [1, 2]b = [1, 2]print(a == b) #Trueprint(a is b) #False# 链式比较print(1 <= 2 < 4) # True# 逻辑运算print(1 <= 2 and 2 < 4) #Trueprint(True or False) #Trueprint(not False) #True# 扩展的True和False# 0 和空表示假# bool(0), bool(""), bool([])print(0 and True) # 0print(1 or False) # 1print(True and 0) # 0print(1 and 3) # 3
in操作符
li = [1, 2, 3, 4]
print(1 in li) # True
print("x" not in li) # True
str = "aabbccd"
print("ab" in str) # True
print("aabc" not in str) # True
Python输入输出
输入函数
使用内建(不用导入其他的包)的函数input(), python2.x和python3.x中有些不同
- python2.x
- raw_input(): 将用户输入的所有内容都当作字符串来处理
- input(): 将用户输入的内容当作代码进行处理(可以理解为使用了
raw_input()和eval()函数)
python3.x
values:需要输出的值,有多个值使用
,进行分隔- sep:分隔符,默认使用空格进行分隔
- end:输出完毕后添加的字符,默认是
\n - file:默认是显示器,也可以指定文件
- flush:刷新缓冲区,进行立刻输出,默认
false```python输出一个值
print(123)
输出一个变量
val = 123 print(val)
输出多个变量
name, year = rity, 1997 print(name, year) #rity 1997
格式化输出
print(“my name is %s, age is %d” % (name, age)) print(“my name is {0}, age is {1}”.format(name, age))
输出到文件中
f = open(“test.txt”, “w”) print(“xxxxxx”, file = f)
输出不自动换行
print(“123”, end=”-“) # 123-
使用分隔符
print(1, 2, 3, sep=”+”) # 1+2+3
<a name="fa6c7a72"></a>
### 格式化输出
<a name="32c91ccc"></a>
##### %[(name)][flags][width][.precision]typecode
- **[]**:可以省略
- **(name)**:根据指定的名称(key),找到对应的值```python
name, age = "rity", 18
print("name is %(name)s, age is %(age)d"%({"name": name, "age": age})
width:输出内容占用的宽度,默认右对齐
python num = 123 print("%10d" % num) # 123flags:填充或对齐方式```python
为空表示右对齐(同上)
-表示左对齐
print(“%10d” % num) #123
0表示使用0填充
min, sec = 5, 8 print(“%02d:%02d” % (min, sec)) # 05:08 ```
.precision:精度设置,用于`%f
`python price = 1.239 print("%.2f" % price) # 1.24(四舍五入)
Python分支
# 单分支判断
age = 17
if age >= 18:
print("You are an adult")
print("end")
# 双分支判断
if age >= 18:
print("You are an adult")
else:
print("You are not an adult")
print("end")
# 多分支判断
score = 59
if 90 <= score <= 100:
print("A")
elif 80 <= score:
print("B")
elif 60 <= score:
print("C")
else:
print("D")
# 常用的三目运算
a, b = 1, 3
x = 2 if a > 2 else 4 # x=4
y = 3 if b < 5 else 2 # y=3
Python循环
# while循环,看重条件判断
num = 0
while num < 4:
print(num)
num += 1
#for循环,多用于遍历
li = [1, 2, 3, 4]
for x in li:
print(x) # 1 2 3 4
# 使用range()函数进行计数迭代
for i in range(1, 10): #[1, 10)
if i % 2: #奇数
print("%d: 奇数" % i)
else:
print("%d: 偶数" % i)
# pass语句,用来占位,没有实际逻辑
if True:
# todo
else:
pass
