python的注释
注释的作用:用自己熟悉的语言,对某些代码进行标注说明,增强程序的可读性;
在Python解释器解释代码的过程中,凡是#右边的,解释器都直接跳过这一行;
注释的分类
单行注释
# 这里是注释
print("hello world")
print("hello python") # 也可以这样进行注释
#后面的就是注释了,为了增强代码的可读性,#后面记得加一个空格;
单行注释一般放在要被注释代码的上一行或者被注释代码的后面,放在后面记得注释和代码之间空两格;
多行注释(块注释)
如果单行注释无法满足注释内容的话,可以使用多行注释;多行注释可以使用一对连续的三个引号,可以是单/双引号;例如:
"""
看注释就行,后面的代码不用管;
这个程序的作用是,通过使用urllib的request模块,给request请求设置访问地址和请求头;
用urlopen进行访问;将获取到的服务器响应写入html变量中,再进行输出。
"""
import urllib.request
ua_headers = {"User-Agent":"Mozilla/4.0(compatible;MSIE7.0;windowsNT5.1;360SE)"}
request = urllib.request.Request("Http://www.baidu.com",headers = ua_headers)
response = urllib.request.urlopen(request)
html = response.read().decode("utf-8")
print(html)
注释的使用注意
- 注释不是越多越好,一目了然的代码,不需要进行注释
- 对于复杂的操作,在代码开始前写上注释;
- 对于不是一目了然的注释,应在尾部添加注释;
- 绝对不要描述代码,除非你是个小白,比如 # 输出hello world
Python中的算数运算符
算数运算符
算数运算符是完成基本的算数运算的符号,用来处理四则运算。
运算符 | 描述 | 示例 |
---|---|---|
+ | 加 | 1+2=3 |
- | 减 | 3-1=2 |
* | 乘 | 2*3=6 |
/ | 除 | 8/2=4 |
// | 取整除 | 9//2=4,返回除法的整除部分 |
% | 取余数 | 9%2=1,返回除法的余数部分 |
** | 幂 | 2**3=8 |
算数运算符的优先级
算数运算符的优先级 和数学中运算符的优先级一致:
- 先乘除,后加减
- 同级运算符从左到右进行计算
- 可以用()调整计算的优先级
优先级表(从高到低排序)
运算符 | 描述 |
---|---|
** | 幂 |
*/%// | 乘除取余取整 |
+- | 加减 |
变量
变量的使用
在Python中,变量就是一个用来存储数据的东西。
每个变量在使用前都必须赋值,只有被赋值以后该变量才会被创建;
变量格式:变量名 = 值
变量的演示
使用交互式ipython演示变量赋值及输出
In [1]: num = "123456"
In [2]: num
Out[2]: '123456'
In [3]: passWord = "123"
In [4]: password
Out[4]: '123'
使用PyCharm演示变量
num = "123456"
password = "123"
print(num)
print(password)
注意:在解释器执行变量,输出结果要用print函数
变量的运算
可以用其他变量的计算结果来定义变量;
例如:
price = 8.5 # 定义单价
weight = 7.2 # 定义重量
cost = price * weight # 计算单价与重量的积并赋值给应付价钱
print(cost)
变量的再运算
可以用变量本身通过运算后的计算结果再赋值给变量
price = 8.5 # 定义单价
weight = 7.2 # 定义重量
cost = price * weight # 计算单价与重量的积并赋值给应付价钱
cost = cost-5 # 购买商品立减5元
print(cost)
变量名只有在第一次出现时才是定义变量;第二次出现是使用变量/修改变量。
变量的类型
- Number 数字(下分为int,long,float,complex,其中python3中已经没有long和int之分了,只有int)
- Bool 布尔类型(True/False,注意布尔类型非0即真)
- Str 字符串
- List 列表
- Tuple 元组
- Dictionary 字典
查看变量类型
用type函数可以查看变量类型,使用格式:type(变量名);例如:
name = "小明"
print(type(name)) # 在ipython下可以直接type(name)
不同变量类型之间的计算
1.数字型变量之间可以直接进行计算
在python中,两个数字型变量是可以志杰进行算数运算的;
如果是布尔型,在计算时,True对应的是数字1,False对应的是数字0;
例如:
i = 10
f = 5.0
b = True
print(i+f)
print(i*f)
print(f+b)
print(i-b)
print(i*b)
2.字符串变量之间通过+拼接字符串
字符串之间可以通过+拼接出新的字符串,例如:
str1 = "早上好啊"
str2 = "你吃饭了吗?"
str3 = str1+str2
print(str3) # 输出 早上好啊你吃饭了吗?
3.字符串变量和整数之间可以通过*来重复拼接字符串
当我们要将同一个字符串重复输出一百甚至上千遍,怎么办?答:用*重复拼接
例如:
apologize = "媳妇,对不起,我错了"
print(apologize*100)
# 或者
apologize = "媳妇,对不起,我错了"
apologize100 = apologize*100
print(apologize100)
4.数字型变量和字符型变量之间不能进行其他运算
如上,如果运算,会报错。
标识符
标识符就是开发人员在程序中自定义的一些符号和名称,如变量名,函数名等;标识名要有见名知意的效果,即有语义。
标识符由字母,数字,下划线组成,且不能以数字开头;
应注意,python中的标识符是区分大小写的,比如:name!=Name
标识符命名规则
- 应该见名知意
- 小驼峰命名法:第一个单词以小写字母开始,第二个单词的首字母大写;比如:userName。
- 大驼峰命名法:第一个和第二个单词都是首字母大写;比如:UserName。
- 下划线分割法:两个单词都是小写,且以下划线_进行分割;比如:user_name。
- 不应与关键字重名,关键字,即int,long,print等。
关键字
什么是关键字?
答:python内部已经使用的标识符。
查看关键字的方法
import keyword
print(keyword.kwlist)
输入与格式化输出
输入
输入 就是用代码获取用户通过键盘获取的信息;在python中,获取输入信息用input函数;
(函数,一个常用的功能,别人已经帮我们写好了,直接用就行,不用关心内部结构;)
input函数的基本使用
基本格式:变量名 = input("请输入xxx:")
例如:name = input("请输入用户名:")。
注意,用户输入的任何内容python都认为是一个字符串类型的数据;
类型转换函数介绍
因为用input接收的数据,全部都是字符串类型,因此有些时候(比如年龄),我们有必要对接收数据做一定的转换;
- int(x),将x转换成一个整数
- float(x),将x转换成一个浮点数,x可以是12.3,也可以是12
- 其他还有str()等,暂且不提
变量和类型转换函数的应用
price = input("请输入水果单价:")
weight = input("请输入水果重量:")
# 因为单价和重量全由用户输入,为字符类型,而字符类型不能做乘法运算,因此将其转换成浮点型
price = float(price)
weight = float(weight)
cost = price*weight
print(cost)
两个字符串之间是不能直接做乘法运算的;
而我们可以看到,用户输入的数字,我们每个数字都要做接收和转换两次处理,那么能不能更简单一点呢?其实是可以的,我们将两个函数进行嵌套使用,即可解决。
改进版:
price = float(input("请输入水果单价:"))
weight = float(input("请输入水果重量:"))
cost = price*weight
print(cost)
格式化输出
什么是格式化输出?
格式化输出,就是当我们做一个软件的时候,如果我们要输出个人信息,比如姓名,但每个人的姓名都是不一样的,不可能为每一个人都做一个程序,输出“你好,欢迎你,xxx”,这个时候,我们就需要格式化输出,将xxx当成一个坑,前面不变,需要时就调用名字变量填入那个坑,这样,就能用一个程序,完成对每个人的欢迎信息了。
%被称为格式化操作符,专门用来处理字符串中的格式;%和不同的字符连用,构成不同的格式化字符。
格式化输出格式如下:
print("你好,你的xxx是 格式化字符"%变量名)
print("你好,你的xxx是 格式化字符 ,xxx是 格式化字符 "%(变量名1,变量名2))
格式化字符 | 含义 |
---|---|
%s | 字符串 |
%d | 有符号十进制整数, |
%f | 浮点数, |
%% | 输出%% |
技巧:
- %06d可以控制输出的 位数为6位,如果变量小于6位则在前面补0,多于或等于则按多的输出;
- %.2f和%06d类似,控制小数点后的位数为两位;
格式化输出字符串变量
name = "小明"
print("我的名字叫%s,你好" % name)
格式化输出整数变量
student_no= 1
print("我的学号叫%d,你好" % student_no)
print("我的学号叫%06d,你好" % student_no)
格式化输出浮点型变量
price = 8.5
weight = 9.0
money = price*weight
print("价格,%f;重量,%f;应付价钱,%f;" % (price, weight, money))
print("价格,%.2f;重量,%.2f;应付价钱,%.2f;" % (price, weight, money))
格式化输出百分号%
num = 0.25
print("数据比例是%.2f%%"%(num*100))