文章目录
Python语言介绍
全球共有600多种语言,每一种语言都有其擅长的东西,不同的场景使用不同的语言.
Python特点:
开发效率第一:拥有丰富的模块库。
学习曲线第一:由简入繁,先简后难。
生态圈第一:人工智能,数据分析,爬虫,外部开发…编程界的瑞士军刀!
运行速度:运行速度并不快,动态的解释性语言。像是中国人与美国人沟通.
Pytyhon主要应用领域:
WEB开发,网络编程,爬虫,云计算(Openstack),人工智能,数据分析,自动化运维,金融分析,科学运算,游戏开发(文明,大话西游)。
写python的方式:
1,python交互器:代码调试,退出即丢失。
2,写在文件里:可保存,常规使用方式。
hello World
程序员的仪式感:hello world
print(“hello world”)
变量
CPU:只负责计算,相同于没有记忆的大脑。20000MB/S
内存:只负责临时存储。**为了解决CPU与硬盘运算速度不匹配。**10000-15000MB/S
硬盘:只负责数据存储。200-600MB/S
CPU处理数据时是从内存中调用,所以当一个巨大的文件打开时会特别慢,因为这是数据从硬盘调用到内存的过程,而等数据调用完毕之后,CPU处理起来便会很快,保存起来速度慢也是相同的原因。
变量:内存就像一个仓库,变量是用于内存中存放程序数据的容器。
三要素:变量名(货物名称),变量值(货物本身),内存地址(货物地址)。
name[变量名] = “Smion”[变量值]
name[调用]
id(name)[内存地址]
先定义,后调用!
**定义规则:**不能随意取名。在程序全局都会使用的变量,尽量定义在最前。尽量以字母开头,变量名的组成是字母,数字,下划线,推荐使用驼峰体或者下划线。(AgeOfBoy/age_of_boy)变量过长可以简化,不要使用中文定义!!
变量的删除:直接重新定义,等于是将货物名称揭下来贴到别处,并非是直接替换货物,python解释器会定期扫描,会自动清空无主之物。
del name[直接删除货物编号]
变量的修改
name="smion"
name2=name
name2=smion
##但当name修改之后,name2并不会跟着修改
name=kk
name2=smion##[name2指的是更改前name指向的内存地址]
Python数据类型:
整数,浮点,字符串,布尔,列表,元组,字典,集合
**int(整数)**integer【所有整数】
age = 20
float(浮点型)【小数】
age = 20.5
字符串
单引号与双引号,无特殊区别,若一句话中有单引号,则必须用双引号。
三引号:连续输入``
mht="""my name is smion
..i am 23 years old
..i am from ShaanXi,i like banbana.
"""
查看字符串类型:type()
字符串的拼接:
name=smion
hometown=ShaanXi
name+hometown##[字符串的拼接]
name*3##[打印三次]
字符串只能和字符串拼接。
**布尔类型:**逻辑判断,true,false
a=3
b=5
a<b
true##[成立]
a>b
false##[不成立]
计算机可以根据判断结果的不同,完成不同的动作。
列表:
names=["smion"(元素),"jake","rain"]
##列表通过下标(索引)来确定位置。
names[1]
jake
names[2]="klare"
##(此时rain便变为了klare)
names.insert(2,"jiji")##插入某数之后
names[smion,jake,jiji,klare]
names,append("Alex")##插入最后
del names [3]##删除
names,remove()##从左开始删除,列表独有
可以用布尔快速查找某字符串是否在列表中,“rain” in names
运算符
算术运算符:%取模—返回除法的余数。(奇偶判断)5%2…1,4%2…0
幂 23=8 ,//取整除 9//2得到4
比较运算符:==判断比较对象是否相等,!=比较两个对象是否不相等。
赋值运算符:+=,-=
a=1
a=a+1##a+=
a
a=2
逻辑运算:and,or,not(or优先级更高)
>>> (a,n,c)
(1, 3, 10)
>>> a>0 or n<3 and c>11
True
>>> (a>0 or n<3)and c>11
False
not 取反**(括号优先级更高,能带括号就带括号)**
>>> not(a>0 or n<3)and c>11
False
>>> not a>n
True
>>> a>n
False
>>> not((a>0 or n<3)and c>11)
True
成员运算
in ,not in(布尔运算)
读取用户指令
# name = input("name:")
# age = input("age:")
# hometown = input("hometown:")
# hobby = input("hobby:")
#
# print(name)
# print(age)
# print(hometown)
# print(hobby)
str与int的相互转换
n1 = input("num 1:")
n2 = input("num 2:")
# print(n1*n2)
print(type(n1),type(n2))
# print(int(n1)*int(n2))
n3 = int(n1)*int(n2)
# input 输入的是字符串,即使输入的是数字也是字符串。
# 将字符串转换成数字 “10” 转换成 “int (10)”
# 数字转字符串 int 变 str
print(n3,type(str(n3)))
格式化打印
name = input("name:")
age = input("age:")
hometown = input("hometown:")
hobby = input("hobby:")
ko_ko = f'''
--------info of {name}-------
Name: {name};
Age: {age};
Hometown: {hometown};
hobby: {hobby};
-------------END-------------
'''
print(ko_ko);
流程控制 if else
单分支(if):
# # 单分支
Salary=input("salary:")
if int(Salary) < 10000:
print("太穷了,赶紧挣钱")
双分支(if,else):
Salary=input("salary:")
if int(Salary) < 10000:
print("太穷了,赶紧挣钱")
else:
print("那还是牛呀!")
# # 顶级代码必须顶行写
# # 同一级别代码缩进必须一致
代码缩进规范:tab会被替换成4个空格
if与elif,多分支
boy_age = 25
guess = int(input("输入你猜测的年龄:"))
if guess > boy_age:
print("诶呀,人家没有那么大!")
elif guess < boy_age:
print("太小了,太小了!")
else:
guess = boy_age
print("bingo!")
多分支练习
salary = input("请输入你的月工资:")
if int(salary) <= 1000:
print("老板!俺是你爹!!")
elif int(salary) <= 2000:
print("这工作狗都不干!")
elif int(salary) <= 3000:
print("吃土人,吃土魂!")
elif int(salary) <= 5000:
print("这温饱能解决吗?")
elif int(salary) <= 8000:
print("小康生活!")
elif int(salary) < 30000:
print("跻身准成功人士!")
elif int(salary) < 50000:
print("老板,你是我爹!")
elif int(salary) <= 100000:
print("公司就是我的家!")
else:
print("人送外号小马云!")
Python!!!