Python基础(安装工具包、变量、分支、循环、函数)
Python命名规范:
安装工具包
搜索工具包的网址:https://pypi.org/
在terminal输入pip命令:
pip install 包名==版本号
pip install -i 镜像地址 --trusted-host 镜像地址对应的host
e.g. pip3 install jupyter -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
国内的pip源:
*阿里云: http://mirrors.aliyun.com/pypi/simple/
清华: https://pypi.tuna.tsinghua.edu.cn/simple
豆瓣: http://pypi.douban.com/simple/ *
python基本数据类型和操作
python官方参考文档:https://docs.python.org/3/tutorial/index.html
变量
数据类型
数字(numbers):
int
floar
complex
字符串(string):
:转义符
r:忽略转义符的作用
+以及空格:多个字符串连接
f+{}/format:引用语法
列表
定义
list_a=[1,2,3,'a','b']
索引
list_a[0] // 1 list_a[-1] //b 负索引
切片(注意:是一个左闭右开区间)
list_a[0:3] //1 2 3
分支结构
if elif else
if a==0: print("a=0") elif a==1: print("a=1") elif a==2: print("a=2") else: print("a>2")
for-in循环
如果明确知道循环执行的次数或者要对一个容器进行迭代,推荐使用for-in循环
range函数
range可以用来产生一个不变的数值序列,而且这个序列通常都是用在循环中的
range(101)可以产生一个0到100的整数序列
range(1,100)可以产生一个1到99的整数序列
range(1,100,2)可以产生一个1到99的奇数序列,其中的2是步长
while循环
while 条件: 循环体
while后面的条件为真,则一直进行循环体内的内容
tips:如果循环中只有一条语句,可以将该语句和while写在同一行- while与else搭配使用
while 条件: 循环体 else: 语句
- break和continue的区别
break:跳出整个循环体
continue:跳出当前循环,继续下一轮循环
实例:猜数字
import random //产生随机数 computer=random.randint(1,100) //产生随机数 while(True): guess = int(input("请输入您的数字:")) if(guess<computer): print("猜小啦!") elif(guess>computer): print("猜大啦!") else: print("猜对啦!") break
函数
1.定义:
def 函数名(形参): 函数体
函数定义完后,在def后一行用三双引号进行函数说明
函数参数
&必须参数:如果在函数内有参数,且在调用的过程中,没有给参数进行传参,则会报错
&默认参数:调用函数时,如果没有传递参数,则会使用默认参数;默认参数在定义函数的时候定义;默认值只会执行一次(这条规则在默认值为可变对象时很重要)
&关键字参数:在传递参数的时候用a=1,b=2来传递,这样就可以不用管参数位置了,但是要注意,关键字参数必须在后面;如果形参为“*name”,它会接收一个字典;如果形式为“name”,接收一个包含除了与已有形参列表以外的位置参数的元组的形参
def method(**a): print(a.keys()) #打印结果:dict_keys(['a', 'b']) print(a.values()) #打印结果:dict_values([1, 2]) method(a=1,b=2)
def method(*a): print(a[0]) print(a[1]) print(a[2]) print(a[3]) method(1,2,3,4)
特殊参数
- :仅限关键字参数,在【仅限关键字】形参前面防止一个
def method(*,a): print(a) method(a=1)
- 解包参数列表
(1):用来解包元组
(2)*:用来解包字典list_a=[3,6] list(range(list_a)) #报错,因为range后面不能加列表 print(list(range(*list_a))) #可以,因为*可以将list_a解包成3,6;打印结果:[3,4,5]
def method(a,b,c): print(a) print(b) print(c) dict1={"a":1,"b":2,"c":3} method(dict1) #错误,因为形参有三个,需要穿三个参数 method(**dict1) #正确,因为**相当于把字典解包成:a=1,b=2,c=3
Lambda表达式
可以用lambda关键字来创建一个小的匿名函数
关键字为lambda
主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去
a=lambda x,y,z:x+y+z print(a(1,2,3))