基本语法

  1. # if
  2. num = input()
  3. if num > 3 and "" == '':
  4. print("num > 3")
  5. elif num < 3:
  6. print("num < 3")
  7. else:
  8. print("num == 3")
  9. # while
  10. a = 1;
  11. while a != 0:
  12. print("please input a")
  13. a = int(input())
  14. # for,输出 1~100
  15. for i in range(1, 101):
  16. print(i, end=" ")
  17. # output 0 ~ 99
  18. for i in range(100):
  19. print(i, end=" ")
  20. # 下面这条语句可以说明,在 for 中的 i 并没有被回收
  21. print(i+1) # output 100
  22. # 字符串格式化
  23. print("hello" + " world")
  24. print('My age is' + 18) # Error, 不能直接加整数
  25. print('My age is' + str(18)) # 要将整数进行转换
  26. print('My age is %d' % 18) # 使用 % 对字符串进行格式化
  27. print("%s's score is %d" % ('Mike', 87)) # ('Mike', 87) 为一个元组(tuple)

模块

  1. # 引入模块
  2. from 模块名 import 方法名
  3. # 如,引入一个产生随机整数函数
  4. from random import randint
  5. # 取 5~10 这个区间中的数字
  6. randint(5, 10)

Python 的基本数据类型

  • 字符串 -> str
  • 整数 -> int
  • 小数 (浮点数)-> float
  • bool 类型 -> bool() -> True False

    列表 list

    变长的线性数据结构,用中括号包围,逗号隔开: ``` print(list(range(1, 10))) # [1, 2, 3, 4, 5, 6, 7, 8, 9]

l = range(1, 10) for i in l: print(i, end=” “)

定义一个 list

l = [1, 1, 2, 3, 5, 8, 13] l = [365, ‘everyday’, 0.618, True]

操作 list

l[0] = 132 l[-1] # 访问倒数第一个元素 l.append(1024) # 将 1024 添加到 list 最后 del l[0] # 删除 index 为 0 的元素

list 切片

l[1:3] # 获取 [l[1], l[2]] l[:3] # 不指定第一个数,切片从第一个数开始 l[1:] # 不指定第二个数,切片直到最后一个数结束 l[:] # 都不指定,返回整个列表 l[1:-1] # 与 l[1:3] 效果相同

  1. ## 元组 tuple
  2. 元组与 list 类似,各种操作也与 list 相同,只不过元组在创建之后就不能被修改了。

postion = (1, 2) # 元组用括号建立 geeks = (‘Sheldon’, ‘Leonard’, ‘Rajesh’, ‘Howard’)

在函数中的应用

def get_pos(n): return (n/2, n*2)

x, y = get_pos(50) print(x, y)

pos = get_pos(50) print (pos[0], pos[1])

  1. ## 异常

try: f = open(‘non-exist.txt’) print (‘File opened!’) f.close() except: print (‘File not exists.’) print (‘Done’)

  1. ## 字典

score = { # 注意,这里为大括号 ‘萧峰’: 95, ‘段誉’: 97, ‘虚竹’: 89 }

score[‘段誉’] score.get(‘慕容复’) # 如果值不存在,则返回 None

字段循环

for name in score: print (score[name])

score[‘虚竹’] = 91 # 修改 score[‘慕容复’] = 88 # 增加 del score[‘萧峰’] # 删除

  1. ## 模块

import random # 导入模块

调用导入模块中的方法

random.randint(1, 10) random.choice([1, 3, 5])

查看模块中的函数和变量

dir(random)

只是导入模块中的某一函数或变量

from math import pi

将引入的函数或变量重命名

from math import pi as math_pi

  1. ## 函数

定义一个函数

def func(a):

定义一个函数,并指定默认参数

def func(a, b=5): def func(a=5, b): # Error, 默认参数

  1. ## and-or 技巧
  2. python 中没有条件表达式,但是可以用 and or 做出条件表达式的效果:

if a > 0: print (“big”) else: print (“small”)

and-or

print ((a > 0) and “big” or “small”)

  1. 但是这样非常容易踩坑,and or 是运用的 python 中的逻辑运算。如果 a 本身为 False(0, '') 就出现问题了:

a = “” b = “hell” c = True and a or b print (c) # ‘hell’

  1. 所以使用的过程中要小心这样的错误,可以使用 list 来解决这个问题:

a = “” b = “hell” c = (True and [a] or [b])[0] print (c) # ‘’

```