Python
是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。
Python安装
https://www.python.org/下载安装包进行安装(猜测和java的JDK一样)
下载完成后安装,这里点击Add Python 3.7 to PATH添加到环境变量(3.5以下没有自动加入环境变量要自己配置),选择自定义安装
测试Python是否安装成功
安装完成后,用cmd命令执行python命令,测试hello world
配置环境变量
在环境变量Path中加入~Python37Scripts路径
使用python
写python可以使用三种方式编辑,cmd、Python命令框、IDLE工具,前两种都是交互式,IDLE是文本编辑工具。
三种如下图
专业人员还是需要使用专业的工具,例如pycharm.
开发工具Pycharm
下载
去jetbrains的官网下载http://www.jetbrains.com/pycharm/,可以下载专业版然后激活
勾选如下的框
激活
进入到C:WindowsSystem32driversetc文件夹下,修改hosts.txt
在最下面加
0.0.0.0 account.jetbrains.com
打开软件,弹出如下框,选择Activation Code,网上搜pycharm激活码
新建Pure Python项目,新建Python File,测试pycharm
数据类型
Python 中数据类型分为数字型和非数字型:
- Number(数字)
- int(整型)
- float(浮点型)
- bool(布尔型)
- complex(复数型)
非数字型
- String(字符串)
- List(列表)
- Tuple(元组)
- Dictionary(字典)
所有非数字型变量都支持以下特点:
- 都是一个序列sequence,可以理解为容器
- 取值[]
- 遍历for in
- 计算长度、最大/最小值、比较、删除
- 链接+和重复*
- 切片
列表
''' 列表最频繁的数据类型 用[]来定义list,数据之间由,分割 长度可变 索引从0开始 ''' #定义一个列表 name_list = [1,2,3,4,5,6] #末位添加数据 name_list.append('python') #指定位置插入数据 name_list.insert(2,'python') #将列表二添加到列表一 age_list = [7,8,9] name_list.extend(age_list) #修改指定索引的数据 name_list[0] = 'first' #删除指定索引的的数据 (不赞同使用,从内存中删除变量) del name_list[4] #删除第一个出现的指定数据 name_list.remove(8) #删除末尾的数据,默认是弹出最后一个 name_list.pop() #列表长度 print(len(name_list)) #数据在列表中出现的次数 print(name_list.count('python')) #排序 name_list2 = [1,2,3,4,5,6] name_list2.sort() #升序 print(name_list2) name_list2.sort(reverse=True) #降序 print(name_list2) print(name_list)
元组
''' 元组:tuple 和列表类似 不同的是元组元素不能修改 多个元素组成 定义:小括号() 索引从0开始 ''' info_tuple = (1,2,3,4,5,6,7,1) print(info_tuple) #打印元组() #数据类型的转换 元组转list list_data = list(info_tuple) print(list_data) #打印列表[] #如果在元素中只有一个元素 需要加, #info_tuple1 = (1) 这样写类型返回为int info_tuple1 = (1,) print(type(info_tuple1)) #查看元素出现的次数 print(info_tuple.count(1)) #查看元素的索引 print(info_tuple.index(2)) #遍历 print('遍历元组') for i in info_tuple: print(i)
字典
''' 字典(dictionary):无序 定义:{} 键值对 ,分割 键key是索引 值value数据 键:值 键是唯一的 值是任何数据类型 但是键只能是字符串 数组 或者元素 ''' IronMan = { 'name':'stack', 'age':36, 'gender':True, 'height':1.80 } #通过键来取值 print(IronMan['name']) print(IronMan.get('age')) # 取到字典的所有键 for i in IronMan.keys(): print(i) # 取到字典的所有值 for i in IronMan.values(): print(i) #取到键值对 for i,v in IronMan.items(): print(i,v) #删除 del IronMan['name'] IronMan.pop('height') #修改 IronMan['age'] = 40 #合并 ,键重复则覆盖 SpiderMan = { 'age':20, 'height1':180 } IronMan.update(SpiderMan)
print(IronMan)
顺序选择循环
if语句
if 条件1: 语句1…… elif 条件2: 语句2…… else: 执行语句3……
while语句
while 条件: 语句……
函数
''' def 函数名(): 函数封装的代码 函数名() 调用函数 def define 缩写 函数名称 可以表达函数封装代码的功能 符合标志符 命名规则 字母 数组 下划线 不能以数字开头 不能与关键字重名 ''' #定义一个无参函数 #python的解释器 知道我们定义了一个函数 def sayHello(): print('hello world') print('hello!!!') #调用函数 sayHello() #定义一个有参函数 #定义时,小括号里的参数为形参 def num_sum(num1,num2): result = num1+num2 print('{}+{}+{}'.format(num1,num2,result)) #调用时,小括号里的参数为实参 num_sum(50,60) ''' 函数的返回值:一个函数执行结束后 告诉调用者一个结果 返回值是函数完成工作后 最后给调用者的一个结果 在函数内部使用return关键字可以返回结果 调用的一方需要用变量来进行接收 ''' #定义一个有参函数 def num_sum2(num1,num2): result = num1+num2 return result #使用一个变量来接收参数 result = num_sum2(50, 70) print(result)
石头剪刀布
''' 引入random函数 ''' import random while 1==1: #将输入转为int player = int(input("请出: (1)石头 (2)剪刀 (3)布")) computer = random.randint(1,3) print(computer) if(player== 0): #当为0时跳出循环 print("退出") break; if(player ==1 and computer==2) or (player == 2 and computer == 3) or (player == 3 and computer == 1): print("you win") elif player == computer: print("平局") else: print("你输了")
12306
cmd安装requests模块
pip install requests
如果不行,去pycharm下面的terminal执行安装。