Python是一门编程语言
目标:
自动批量爬取和整理自己需要的信息;
处理日常各种格式的办公文档,自动接入通讯软件并自动处理消息,繁琐重复性工作的自动化
基础语法知识
使计算机实现图像识别——人工智能领域的应用
#在正式敲代码之前,必须切换成英文输入状态
print()函数
Python代码的功能:打印内容
(0)我们向计算机发出指令:“打印‘520’”;(1)Python把这行代码编译成计算机能听懂的机器语言;(2)计算机做出相应的执行;(3)最后把打印结果呈现在我们面前。
无引号:适用于数字和数学运算
单引号的用法
当括号内有引号的时候,就相当于告诉计算机——你不需要执行多余的操作,我输入什么,你就打印什么。
双引号的用法
单引号和双引号,两者的效果没什么区别,都是打印文本
print("Let's play") 需要注意区分清楚哪个引号是属于print()函数结构,哪个引号是属于你要让计算机打印的内容,不能“混搭”
# 括号内是单引号的情况。
print('一起玩吧')
print('一起玩吧')
# 括号内是双引号的情况。
print("一起玩吧")
print("一起玩吧")
# 括号内单双引号同时存在的情况。
print("Let's play")
print("Let's play")
『#』常用作单行注释符号,用于解释单行代码
`print(1+1)`是计算机能直接读懂的数学运算,所以,它会直接打印出最终的运算结果:“2”
# 三引号的用法
print内部使用三引号'''(连续输入三个单引号)来实现跨行输出
代码:
> print('''我愿意留在汤婆婆的澡堂里工作两年,
第一年在锅炉房和锅炉爷爷一起烧锅炉水,
将在这个世界变成一头猪。
''')
最常见的符号报错提示就是【syntaxError:invalid syntax】(语法错误:无效语法) 原因——软件使用环境是英文输入环境,未切换中文状态
# 转义字符
转义字符的特征就是:反斜杠+想要实现的转义功能首字母
# 变量和赋值
代码:
name='千寻'
表达的意思是:把千寻这个名字放到name这个变量变量“盒子”中。
name='千寻'
name='小千'
print(name)
# 变量的命名规范
比如说,如果信息是姓名,那么变量可以命名为name;如果信息是数字,那么变量名则应该叫做number。
赋值符号`=`不是左边等于右边的意思。仅仅表示赋值动作:把右边的内容放到了左边的盒子中。代表左右两边相等的符号,是比较运算符`==`
# 数据类型
字符串(str)、整数(int)和浮点数(float)
字符串英文string,简写str,是由一个个字符串起来的组合,字符可以是一个数字、一个字母、一个文字,甚至是一个符号。字符串可以表达现实世界里的词、语句、表达式等。
字符串的识别方式非常简单——有层名为【引号】的皮,只要是被【单/双/三引号】这层皮括起来的内容,不论那个内容是中文、英文、数字甚至火星文。只要是被括起来的,就表示是字符串类型。
question = 'Python魔法可以生成镜像世界吗?'
meaning = '镜像世界的意义是解决一些在现实世界难以实现的任务,同意+1'
emotion = 'clapping!耶!'
slogan = '进入镜像世界——python,提高战斗力!'
print(question)
print(meaning)
print(emotion)
print(slogan)
字符串类型必须有【引号】的辅助
- 在进行变量的拼接打印时,遇到报错,关键就在于:只有字符串才可以在print打印时进行拼接,使用加号表示拼接这个动作
# 整数
整数英文为integer,简写做int。Python世界的整数其实和现实世界数学中定义的一样:是正整数、负整数和零的统称,是没有小数点的数字。
a = 10
b = -60
c = 6841
d = 0
# 浮点数
数学意义上的小数
浮点数的英文名是float,与整数(int)和字符串(str)不同,浮点数没有简写。
1.0
3.14159
-0.33
#计算浮点数(小数)
print(0.55+0.3)
#输出结果
0.8500000000000001
Python计算浮点数时,会先把0.55和0.3转化成二进制数【注:二进制数由0和1表示,逢二进一】,而在这个转化过程中存在误差,这样,就造成了我们与程序计算结果的差异。
# 数据的应用
# 四则运算
运算优先级:Python世界的运算优先级,和我们平时的计算优先级是一样的。
# 字符串的拼接
hero = '我'
organization = '风变编程'
identity = '学员'
action = '是'
ID = '007'
print(hero+action+organization+identity+ID)
print(organization+identity+ID+action+hero)
#输出结果
我是风变编程学员007
风变编程学员007是我
# 数据类型的查询——type()函数
who = '我的'
action = '是'
destination = '镜像世界'
code = '通行密码
number = 153
print(type(who))
#输出结果
<class 'str'>
注意,不同数据类型不能直接合并,需要进行数据转换再合并
# 数据转换
负责转换数据类型的函数一共有3种:str()、 int()和float()。
函数表示将其他数据类型的文本转换成字符串/整数/浮点数
# str()函数
who = '我的'
action = '是'
destination = '镜像世界'
code = '通行密码
number = 153
print(who+destination+code+action+str(number))
#输出结果
我的镜像世界通行密码是153
另一个代码:
print(str(number)+expression+action+unit+magic)
print('153'+expression+action+unit+magic)
**str()**函数和**引号**,输出了同一种结果?
用两种不一样的方法,**str()**函数和**引号**,输出了同一种结果?
可是,为什么引号内我们使用的是数字,而不是变量名number呢?这是因为,当我们使用引号时,引号里的东西,都会被强制转换为字符串格式。
所以,如果我们把变量名number放进引号里后,被强制转换为字符串的,将是变量名number,而不是变量名代表的数字153。
# int()函数
number1 = '6'
number2 = '1'
print(int(number1)+int(number2))
#输出结果
7
只有符合整数规范的字符串类数据,才能被int()强制转换。
别看它虽然只有一句话,但它其实带有三层含义:首先,整数形式的字符串比如'6'和'1',可以被int()函数强制转换。
其次,文字形式,比如中文、火星文或者标点符号,不可以被int()函数强制转换。
最后,小数形式的字符串,由于Python的语法规则,也不能使用int()函数强制转换。
比方说下列代码,如果点击运行,程序会报错【ValueError:invalid literal for int() with base 10: '3.8'】(值异常:浮点类型字符串无法使用int()强制转换)。
print(int('3.8'))
# 运行后显示结果:ValueError:invalid literal for int() with base 10: '3.8'
虽然浮点形式的字符串,不能使用int()函数。但浮点数是可以被int()函数强制转换的。
print(int(3.8))
#输出结果
3
int()函数的本质是将数据转换为整数。所以对于浮点数,int()函数会做取整处理。但是,同我们平时对小数四舍五入的处理方法不同,int()函数会直接抹零,直接输出整数部分。
# float()函数
将其他数据类型转换成浮点数
首先float()函数的使用,也是将需要转换的数据放在括号里,像这样:float(数据)。
其次,float()函数也可以将整数和字符串转换为浮点类型。但同时,如果括号里面的数据是字符串类型,那这个数据一定得是数字形式。
height = 188.0
weight = 180.0
age = '89'
print(height)
print(weight)
print(float(age))
练习:
1.由于变量中有小数形式的字符串`'7.8'`,所以需要使用转换函数将此变量转换为浮点型
2.转换后使用int()函数取整
3.由于数据拼接需要变量为字符串形式,所以需要将变量转化为字符串类型
4.最后数据拼接,得出结果
slogan = '脸黑怪我咯'
number = '7.8'
unit = '张'
sentence = '蓝票一个SSR都没有'
方案一(引入新变量):
a=int(float('7.8'))
print(slogan+str(a)+unit+sentence)
方案二:
print(slogan+str(int(float('7.8')))+unit+sentence)