- 通过用自己熟悉的语言,在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。
注释分为两类:单行注释 和 多行注释。
只能注释一行内容,语法如下:
# 注释内容
可以注释多行内容,一般用在注释一段代码的情况, 语法如下:
"""
第一行注释
"""
'''
注释1
'''
快捷键: 在PyCharm中单行注释快捷键 Ctrl + /
# 输出hello world
print('hello world')
# 输出(简单的说明可以放到一行代码的后面,一般习惯代码后面添加两个空格再书写注释文字)
"""
hello 二狗
"""
print('hello 二狗')
'''
hello 二狗
'''
print('hello 二狗')
注意:解释器不执行任何的注释内容。
程序中,数据都是临时存储在内存中,为了更快速的查找或使用这个数据,通常我们把这个数据在内存中存储之后定义一个名称,这个名称就是变量。
通俗的讲,变量就是一个存储数据的的时候当前数据所在的内存地址的名字而已。
变量名 = 值
变量名自定义,要满足标识符命名规则。
标识符命名规则是Python中定义各种名字的时候的统一规范,具体如下:
False None True and as assert break class
continue def del elif else except finally for
from global if import in is lambda nonlocal
not or pass raise return try while with
yield
English_name = 'frank'
print(English_name)
Chinese_Name = '二狗'
print(Chinese_Name)
值得一提的是,python的解释器会自动识别变量的类型,不需要我们自己去指定不同的数据类型
python的数据类型和Java有一定的差别
Java则维护着坚定的语法规则,这是一种静态类型语言,用户需要公开声明变量类型。如果你不声明,代码就无法编译。由于这些原因,许多开发人员会觉得没有必要遵循缩进的规则,尤其是当代码库非常庞大的情况下。
Python是一种动态类型语言,因此它不需要声明变量类型,因为解释器会在运行时推断变量类型并检查类型。所以,Python的语法更为简单。此外,Python不使用大括号,并遵循缩进规则,所以代码非常容易阅读和人性化。
检测数据类型的方法:
type()
使用这个函数,会在终端上面显示表明数据类型
a = 1
print(type(a)) # -- 整型
b = 1.1
print(type(b)) # -- 浮点型
c = True
print(type(c)) # -- 布尔型
所谓的格式化输出即按照一定的格式输出内容。
格式符号 | 转换 |
---|---|
%s | 字符串 |
%d | 有符号的十进制整数 |
%f | 浮点数 |
%c | 字符 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写ox) |
%X | 十六进制整数(大写OX) |
%e | 科学计数法(小写’e’) |
%E | 科学计数法(大写’E’) |
%g | %f和%e的简写 |
%G | %f和%E的简写 |
格式化字符串除了%s,还可以写为f'{表达式}'
age = 18
weight = 75.5
name = 'frank'
# 我的体重是75.50公斤
print('我的体重是%.2f公斤' % weight)
# 我的,今年18岁了
print('我的名字是%s,今年%d岁了' % (name, age))
# 我的名字是frank,今年18岁了
print(f'我的名字是{name}, 明年{age}岁了')
f-格式化字符串是Python3.6中新增的格式化方法,该方法更简单易读。使用更加常见。
对于格式化输出多个变量记得用小括号将多个变量按照顺序填写,并且以逗号隔开。
\n
:换行。\t
:制表符,一个tab键(4个空格)的距离。想一想,为什么两个print会换行输出?
print('输出的内容', end="\n")
在Python中,print(), 默认自带
end="\n"
这个换行结束符,所以导致每两个
在Python中,程序接收用户输入的数据的功能即是输入。
input("信息")
input
,等待用户输入,输入完成之后才继续向下执行。input
接收用户输入后,一般存储到变量,方便使用。input
会把接收到的任意用户输入的数据都当做字符串处理。password = input('请输入您的密码:')
print(f'您输入的密码是{password}')
#
print(type(password))
问:input()接收用户输入的数据都是字符串类型,如果用户输入1,想得到整型该如何操作?
答:转换数据类型即可,即将字符串类型转换成整型。
函数 | 说明 |
---|---|
int(x [,base ]) | 将x转换为一个整数 |
float(x ) | 将x转换为一个浮点数 |
complex(real [,imag ]) | 创建一个复数,real为实部,imag为虚部 |
str(x ) | 将对象 x 转换为字符串 |
repr(x ) | 将对象 x 转换为表达式字符串 |
eval(str ) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s ) | 将序列 s 转换为一个元组 |
list(s ) | 将序列 s 转换为一个列表 |
chr(x ) | 将一个整数转换为一个Unicode字符 |
ord(x ) | 将一个字符转换为它的ASCII整数值 |
hex(x ) | 将一个整数转换为一个十六进制字符串 |
oct(x ) | 将一个整数转换为一个八进制字符串 |
bin(x ) | 将一个整数转换为一个二进制字符串 |
重点为标注的那几个
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 1 + 1 输出结果为 2 |
- | 减 | 1-1 输出结果为 0 |
* | 乘 | 2 * 2 输出结果为 4 |
/ | 除 | 10 / 2 输出结果为 5 |
// | 整除 | 9 // 4 输出结果为2 |
% | 取余 | 9 % 4 输出结果为 1 |
** | 指数 | 2 ** 4 输出结果为 16,即 2 * 2 * 2 * 2 |
() | 小括号 | 小括号用来提高运算优先级,即 (1 + 2) * 3 输出结果为 9 |
()
高于 **
高于 *
/
//
%
高于 +
-
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值 | 将= 右侧的结果赋值给等号左侧的变量 |
num = 1
print(num)
num1, float1, str1 = 10, 0.5, 'hello world'
print(num1)
print(float1)
print(str1)
a = b = 10
print(a)
print(b)
在python中变量的赋值规则更加多变
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算符 | c += a 等价于 c = c + a |
-= | 减法赋值运算符 | c -= a 等价于 c = c- a |
*= | 乘法赋值运算符 | c *= a 等价于 c = c * a |
/= | 除法赋值运算符 | c /= a 等价于 c = c / a |
//= | 整除赋值运算符 | c //= a 等价于 c = c // a |
%= | 取余赋值运算符 | c %= a 等价于 c = c % a |
**= | 幂赋值运算符 | c ** = a 等价于 c = c ** a |
比较运算符也叫关系运算符, 通常用来判断。
运算符 | 描述 | 实例 |
---|---|---|
== | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b) 为 True |
!= | 不等于 。如果两个操作数的结果不相等,则条件为真(True),否则条件结果为假(False) | 如a=3,b=3,则(a == b) 为 True如a=1,b=3,则(a != b) 为 True |
> | 运算符左侧操作数结果是否大于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7,b=3,则(a > b) 为 True |
< | 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=7,b=3,则(a < b) 为 False |
>= | 运算符左侧操作数结果是否大于等于右侧操作数结果,如果大于,则条件为真,否则为假 | 如a=7,b=3,则(a < b) 为 False如a=3,b=3,则(a >= b) 为 True |
<= | 运算符左侧操作数结果是否小于等于右侧操作数结果,如果小于,则条件为真,否则为假 | 如a=3,b=3,则(a <= b) 为 True |
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。 | True and False, 返回 False。 |
or | x or y | 布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。 | False or True, 返回 True。 |
not | not x | 布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not True 返回 False, not False 返回 True |
a = 0
b = 1
c = 2
# and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(b and c) # 2
print(c and b) # 1
# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1
True。 | not True 返回 False, not False 返回 True |
a = 0
b = 1
c = 2
# and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(b and c) # 2
print(c and b) # 1
# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1