猜数字:
from random import randint
x = randint(0,300)
for count in range(0,5):
print(x)
digit = int(input('input a number:'))
if digit == x:
    print('Bingo!')
elif digit > x:
    print('Large!')
else:
    print('Small!')	

range()函数:
list(range(3,11,2))#3~11,步长为2
[3, 5, 7, 9]
>>> list(range(3,11))#3~11,步长,默认为1,个数为末尾减去初始
[3, 4, 5, 6, 7, 8, 9, 10]
>>> list(range(11))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

while循环:(1~9累加)
sum = 0
 j = 1
 while j < 10:
	sum+=j
	j +=1

>>> #for循环遍历字符串
>>> s = 'python'
>>> for c in s:
	print(c)
	
p
y
t
h
o
n

>>> #列表解析
>>> [i for i in range(10)]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> (i+1 for i in range(10) if i%2 == 0)
<generator object <genexpr> at 0x0344DF90>
>>> [i+1 for i in range(10) if i%2 == 0]
[1, 3, 5, 7, 9]

#输出2~100之间素数(while循环)
from math import sqrt
j=2
while j  <= 100:
  i = 2
  k = sqrt(j)
  while i <= k:
    if j%i == 0:break
    i = i+1
  if i > k:
    print(j,end = ' ')
  j += 1

#输出2~100之间素数(for循环)
from math import sqrt
for i in range(2,101):
  flag = 1
  k = int(sqrt(i))
  for j in range(2,k+1):
    if i%j == 0:
        flag = 0
        break
  if(flag):
    print(i,end = ' ')

>>> #自定义函数的创建
>>> def addMe2Me(x):
	'apply operation + to argument'
	return(x+x)

>>> addMe2Me(3.7)
7.4

#自定义函数输出1到100之间的素数
from math import sqrt
def isprime(x):
    if x == 1:
       return False
    k = int(sqrt(x))
    for j in range(2,k+1):
        if x%j == 0:
          return False
    return True
for i in range(2,101):
    if isprime(i):
        print(i,end = ' ')

>>> #传递函数,把函数名当做是一个参数传递给另一个函数
>>> def addMe2Me(x):
	return (x+x)
>>> def self(f,y):
	print(f(y))
>>> self(addMe2Me,2.2)
4.4
>>> 

#lambda匿名函数,不需要取函数名,直接调用
>>> r = lambda x:x+x
>>> r(5)
10

#循环和递归(求第N个斐波那契数列)
def fib(n):
  a,b = 0,1
  count = 1
  while count < n:
    a,b = b,a+b
    count = count + 1
  print(a)

#汉诺塔游戏
#三个塔座A、B、C上各有一根针,通过B把64个盘子从A针移动到C针上,移动时必须遵循下列规则:
(1)圆盘可以插入在A、B或C塔座的针上
(2)每次只能移动一个圆盘
(3)任何时刻都不能将一个较大的圆盘压在较小的圆盘之上
def hanoi(a,b,c,n):
  if n == 1:
      print(a,'->',c)
  else:
      hanoi(a,c,b,n-1)
      print(a,'->',c)
      hanoi(b,a,c,n-1)

#变量作用域
global_str='hello'#全局变量
def foo():
local_str = 'world'#局部变量
return global_str +local_str

#output:helloworld

#output:helloworld

#全局和局部变量名字相同时,要内层屏蔽外层
a=3
def f():
a=5
print(a**2)

#output:25

#常用标准库函数(内建函数,用户自定义函数,标准库函数)
#数学运算的函数
import math
#上取整
>>> math.ceil(5.8)
6
#下取整
>>> math.floor(2.3)
2
>>> math.pi
3.141592653589793
>>> math.e
2.718281828459045
>>> math.pow(2,3)
8.0
>>> math.sqrt(9)
3.0
#弧度转换为角度
>>> math.degrees(3.14)
179.9087476710785
#角度转化为弧度
>>> math.radians(180)
3.141592653589793

#os模块
>>> import os
>>> os.getcwd
#获得当前工作目录
>>> os.getcwd()
'C:\\Users\\john\\AppData\\Local\\Programs\\Python\\Python36-32'
>>> os.rename('test.txt',test1.txt)#重命名
>>> os.remove('test.txt')#删除

>>>import random
>>> random.choice(['1','2','3'])#随机选择一个值
#output:'1'
>>> random.randint(1,100)#1到100随机选择一个值
71
>>> random.randrange(0,10,2)#0,2,4,6,8随机选择一个值
2
>>> random.random()#0到1之间随机生成一个值
0.8776853605989321
>>> random.uniform(5,10)#5到10之间随机生成一个浮点数
9.568125121798023
>>> random.sample(range(100),10)#100范围内随机生成10个元祖
[10, 77, 50, 59, 45, 57, 78, 39, 23, 44]
>>> nums = [1001,1002,1003,1004,1005]
>>> nums#随机排序元素,改变原始顺序
[1001, 1002, 1003, 1004, 1005]
>>>print(random.choice(['霸道总裁风', '冷艳高贵风', '扎心了老铁风','人来风']))
人来风

#日期模块
>>> import datetime
>>> dir(datetime)
['MAXYEAR', 'MINYEAR', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_divide_and_round', 'date', 'datetime', 'datetime_CAPI', 'time', 'timedelta', 'timezone', 'tzinfo']
>>> from datetime import date
>>> date.today()#获取当前日期
datetime.date(2019, 5, 7)
>>> tm = time(23,20,35)#自定义一个当前时间
>>> print(tm)
23:20:35
>>> from datetime import datetime
>>> dt = datetime.now()#获取当前时间,日期
>>> dt
datetime.datetime(2019, 5, 7, 10, 22, 50, 414244)
>>> print(dt.strftime('%a %b %d %Y %H:%M'))#按照格式输出
Tue May 07 2019 10:22
>>> dt = datetime(2017,6,6,23,29)
>>> print(dt)
2017-06-06 23:29:00
>>> ts = dt.timestamp()#时间戳
>>> ts
1496762940.0
>>> print(datetime.fromtimrstamp(ts))#本地时间戳
2017-06-06 23:29:00


#异常(语法错误,运行时刻错误,逻辑错误)
#用try-except语句检查异常:
try:
    num1=int(input("Enter the first number:")
    num2=int(input("Enter the second number:))
    print(num1/num2)
except ZeroDivisionError as err:
    print(The second number cannot be zero!)
    print(err)