Python注释、变量、输入输出、运算符

注释(comment)


作用

没有注释的代码:

在这里插入图片描述

注释过的代码:

在这里插入图片描述

  • 一眼看过去,没有注释过的代码给人杂乱无章,无从下手的感觉。而注释过的代码则看起来条理清晰,能够很容易的理解到每段代码的作用。
  • 通过自己熟悉的语言,在程序中对某些代码进行解释说明,这就是注释的作用,能够大大增强程序的可读性,方便自己和他人对代码进行阅读和维护。
  • 解释器不执行注释内容 ,故可利用注释使得某段代码不再运行,方便调试

分类及语法
单行注释

只能用一行内容来进行注释

语法:
	#注释内容

实例:

# 输出hello world
print('hello world')

print('hello Python')  # 输出(简单的说明可以放到一行代码的后面,一般习惯代码后面添加两个空格再书写注释文字)
多行注释

可以用多行内容来进行注释,一般用于解释一整个代码块

Pycharm快捷键:Ctrl + /
IDLE快捷键:Ctrl +3 注释 ,Ctrl+4 取消注释

语法:
    """
    	第一行注释
		第二行注释
		第三行注释
    """'''
		注释1
		注释2
		注释3
	'''

实例:

"""
    下面三行都起到输出的作用,输出的内容分别是:
    hello Python
    hello C
    hello Javascript
"""
print('hello Python')
print('hello C')
print('hello Javascript')


'''
    下面三行都起到输出的作用,输出的内容分别是:
    hello Python
    hello C
    hello Javascript
'''
print('hello Python')
print('hello C')
print('hello Javascript')

变量(variable)

作用

Python程序运行时,数据临时储存在内存当中,为了更快地查找和使用数据,给某块内存空间定义一个名称,这个名称就是变量名。这块内存空间就成了有名字的可以承载数据的容器。定义之后,使用变量名便可访问变量对应的数据值。

在这里插入图片描述

定义

定义语法:

变量名=变量值
variale=value
  • 无需声明,直接将value值赋给(assign to)变量variable,即为定义了变量variable
  • 变量名可自定义,需满足标识符命名准则
标识符命名准则

标识符(identifier)即Python语言中各种对象的名称,无论是变量,还是函数等,在定义时标识符都需满足以下规范:

  • 由数字、字母、下划线组成
  • 不能数字开头
  • 不能使用内置关键字(key words)
  • 严格区分大小写( case-sensitive)
内置关键字
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
命名习惯
  • 见名知义,顾名思义
  • 大驼峰命名法:每个单词首字母都大写,如MyName
  • 小驼峰命名法:第二个及以后的单词首字母大写,如myName
  • 下划线命名法(蛇形命名法):如my_name
使用变量

定义之后,可直接使用变量对变量的值进行各种操作

my_name="Li"
print(my_name)  # 相当于print("Li")

my_name="Lily"  #可对变量重新赋值
print(my_name)  # 现在是相当于print("Lily")

数据类型(Data type)

为了解决不同的业务需求,Python内置了不同的数据类型。

在这里插入图片描述

type()

使用type函数可检测变量的数据类型

语法:

type(variable)

实例:

a = 1
print(type(a))  # <class 'int'> -- 整型

b = 1.1
print(type(b))  # <class 'float'> -- 浮点型

c = True
print(type(c))  # <class 'bool'> -- 布尔型

d = '12345'
print(type(d))  # <class 'str'> -- 字符串

e = [10, 20, 30]
print(type(e))  # <class 'list'> -- 列表

f = (10, 20, 30)
print(type(f))  # <class 'tuple'> -- 元组

h = {10, 20, 30}
print(type(h))  # <class 'set'> -- 集合

g = {'name': 'TOM', 'age': 20}
print(type(g))  # <class 'dict'> -- 字典

输出(output)

作用:程序输出内容给用户

age = 18
print(age)

# 需求:输出年龄大小
格式化输出

按照一定的格式输出内容

%格式化符号

在对应位置插入值

格式符号转换
%s字符串
%d有符号的十进制整数
%f浮点数
%c字符
%u无符号十进制整数
%o八进制整数
%x十六进制整数(小写ox)
%X十六进制整数(大写OX)
%e科学计数法(小写’e’)
%E科学计数法(大写’E’)
%g%f和%e的简写
%G%f和%E的简写
%b二进制整数

实例

a=10
print("a=%d" % a)
#打印a=10

word="Hello"
print("%s world" % word)
#打印 Hello world
  • %转换旗标 总位数.小数位f

    如:

    a=1.23
    print("%06.1f" % a)
    #总共6位,1位小数,不足以0补齐
    #打印 0001.2
    
f格式化字符串

f格式化字符串中的括号内的变量可以直接使用它的值

语法:

f"...{变量名}..."

a=3
b=4
print(f"a+b={a+b}")
#打印 a+b=7
format方法

f格式化字符串的进阶版

语法:

"...{序号:格式}...{序号:格式}...".format(变量a,变量b)
  • 其中的序号对应format()中的变量顺序,从0开始

  • 其中的格式为

    <填充字符><对齐方式><宽度><千位分隔符,><.小数位数><数据类型>

​ -填充字符默认为空格,还可改为*,-,#等

​ -对齐方式有左对齐(<),居中(^),右对齐(>)

​ -宽度即为输出字符的总宽度,若不足则用填充字符补齐,若超过就进行截断

​ -千位分隔符,数字可选

​ -.2表示保留两位小数,不足用0补

​ -数据类型和%格式化输出后面的格式符号相同

如:

a=1.1
b=2.2222
print("{1:-<6,.2f}and{0:*>6.1f}".format(a,b))
'''
最后的结果是
2.22--and***1.1
'''
转义字符(escape character)

在前面加上\ 后具有特殊作用的字符

常见的有

转义字符含义
\’单引号
\nnew line 换行
\rcarriage return 回车
\ttab 水平制表
\bbackspace 删除

如:

print("Hello\nPython\t!")
"""
打印
Hello
Python	!
"""
print()

print(待打印字符串,end="\n")

也就是说print输出完内容后会默认换行

可根据需求进行更改

print("Hello!",end="")
print("Python",end="")
#打印Hello!Python

print("Hello!")
print("Python")
"""
打印
Hello!
Python
"""

输入(input)

接受用户输入

input()

语法:

input("提示信息(prompt)")

特点:

  • 当程序执行到input,等待用户输入,输入完成之后才继续向下执行。
  • 在Python中,input接收用户输入后,一般需要存储到变量中,方便以后使用。
  • 在Python中,input会把接收到的任意用户输入的数据都当做字符串处理。
password = input('请输入您的密码:')

print(f'您输入的密码是{password}')
# <class 'str'>
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. float() -- 转换成浮点型
num1 = 1
print(float(num1))
print(type(float(num1)))

# 2. str() -- 转换成字符串类型
num2 = 10
print(type(str(num2)))

# 3. tuple() -- 将一个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))


# 4. list() -- 将一个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))  

# 5. eval() -- 将字符串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))  #int 
print(type(eval(str2)))  #list
print(type(eval(str3)))  #tuple

运算符(operator)

算数运算符
运算符描述实例
+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

注意:

  • 混合运算优先级顺序:()高于 ** 高于 * / // % 高于 + -
赋值运算符(assignment operator)
运算符描述实例
=赋值=右侧的结果赋值给等号左侧的变量
  • 单个变量赋值
num = 1
print(num)  #1
  • 多个变量赋值
num1, float1, str1 = 10, 0.5, 'hello world'
print(num1)  #10
print(float1)  #0.5
print(str1)  #hello world
  • 多变量赋相同值
a = b = 10
print(a)  #10
print(b)  #10
  • 交换变量的值
a=10,b=20
a,b=b,a
print(a)  #20
print(b)  #10
复合赋值运算符
运算符描述实例
+=加法赋值运算符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
a = 100
a += 1
# 输出101  a = a + 1,最终a = 100 + 1
print(a)

b = 2
b *= 3
# 输出6  b = b * 3,最终b = 2 * 3
print(b)

c = 10
c += 1 + 2
# 输出13, 先算运算符右侧1 + 2 = 3, c += 3 , 推导出c = 10 + 3
print(c)
比较运算符

比较运算符也叫关系运算符, 通常用来判断。

运算符描述实例
==判断相等。如果两个操作数的结果相等,则条件结果为真(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
a = 7
b = 5
print(a == b)  # False
print(a != b)  # True
print(a < b)   # False
print(a > b)   # True
print(a <= b)  # False
print(a >= b)  # True
逻辑运算符(logical operator)
运算符逻辑表达式描述实例
andx and y布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。True and False, 返回 False。
orx or y布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。False or True, 返回 True。
notnot x布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。not True 返回 False, not False 返回 True
a = 1
b = 2
c = 3
print((a < b) and (b < c))  # True
print((a > b) and (b < c))  # False
print((a > b) or (b < c))   # True
print(not (a > b))          # 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
关系运算符
运算符
(a) in (A)如果元素a在序列A中,返回True;否则False
(a) not in (A)如果元素a不在序列A中,返回True;否则False
(a) is (b)如果a,b是同一对象,返回True;否则False
(a) is not (b)如果a,b不是同一对象,返回True;否则False
print(1 in [1,2,3,4])
#True
print(2 not in [1,2,3,4])
#False
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木子希卡利

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值