Python注释

单行注释

  1. # 这是一个单行注释
  2. print("test")

多行注释

  1. '''
  2. 这里就是python的多行注释方式
  3. 可以直接分行进行注释操作
  4. 本质上是字符串
  5. '''
  6. import this
  7. print("hello world")

特殊注释

  • !/usr/bin/python3

    指定解释器的版本
  • encoding=utf-8

    python 2.x解决中文文本乱码

    Python变量

    变量使用

    使用之前不用声明;做参数传递时,所有的变量都是引用

    定义变量

    1. # arg = val
    2. a = 1
    3. # arg1, arg2 = 1, 2
    4. a, b = 1, 2
    5. # arg1 = arg2 = val
    6. a = b = 3

    使用变量的好处

    节省空间,便于修改,可读性强

    使用变量注意事项

  • 一个变量只能引用一个数值

  • 命名规范
    • 数字、字母、下划线
    • 见名知义
    • 驼峰命名
    • 只能使用非关键字
    • 区分大小写
  • 使用变量之前一定要赋值

    Python数据类型简介

    常用数据类型

  • Numbers(数值类型)

  • Bool(布尔类型)
  • String(字符串)
  • List(列表)
  • Set(集合)
  • Tuple(元组)
  • Dictory(字典)
  • NoneType(空类型)

    类型转换

    1. num = "6"
    2. print(4 + int(num)) # 10
    3. print(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

  1. <a name="a8a3a095"></a>
  2. ### 复合运算符
  3. ```python
  4. num = 2
  5. num = num + 3
  6. # 与下面这种方式等价,且效率更高
  7. num += 3

比较运算符

  1. # 布尔类型是一种单独的类型
  2. res = 10 != 2
  3. print(res) #True
  4. # a, b指向同一块内存
  5. a = 1
  6. b = 1
  7. print(a == b) #True
  8. print(a is b) #True
  9. #a, b指向不同的内存
  10. #可以使用id(arg)来查看变量所在的内存区域
  11. a = [1, 2]
  12. b = [1, 2]
  13. print(a == b) #True
  14. print(a is b) #False
  15. # 链式比较
  16. print(1 <= 2 < 4) # True
  17. # 逻辑运算
  18. print(1 <= 2 and 2 < 4) #True
  19. print(True or False) #True
  20. print(not False) #True
  21. # 扩展的True和False
  22. # 0 和空表示假
  23. # bool(0), bool(""), bool([])
  24. print(0 and True) # 0
  25. print(1 or False) # 1
  26. print(True and 0) # 0
  27. print(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.xpython3.x中有些不同

  • python2.x
    • raw_input(): 将用户输入的所有内容都当作字符串来处理
    • input(): 将用户输入的内容当作代码进行处理(可以理解为使用了raw_input()eval()函数)
  • python3.x

    • input(): 和2.x版本的raw_input()函数相同。

      输出函数

      完整函数:print(values, sep, end, file, flush)
  • 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) # 123

  • flags:填充或对齐方式```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