python中一切皆对象 

什么是变量、变量名?

  --变量是存放数据的容器,变量名是区分容器的名字

  例如 : a = 7,a就是变量的名字,叫a名字指向那个容器存放了数字 7

变量有什么形式?

   变量名 =(赋值符合)现实数据,python是一门动态的语言,会自动识别变量类型,不需要手动确定

student_01 = ‘小小’

      --(声明一个变量student_01,= 表示给变量赋值,“小小”只是个值)

    --从这句话中我可以推断,小小是个学生,有可能学号是01号,所以这编程就有了现实意义

     -- 变量还可以接收一个数学表达式

number = 3+4
print(number )
# 将会打印 7 

  思考?

name = 'jiujiu'
new_name = name
name = 'beimen'
print(name, new_name)

# 输出结果 beimen jiujiu

  为啥?

如何查看变量类型?

   --type()    -- 表示查询括号里 数据 的类型。

#!/usr/bin/python
# -*- coding: utf-8 -*-

# str
str_1 = 'kaobei'
# int
num_1 = 123456
# float
num_2 = 1234.56
# bytes
num_3 = b'123456'

print(type(str_1))
print(type(num_1))
print(type(num_2))
print(type(num_3))

分变量类型有什么意义?

--每个类型的变量,运算方式不一样,进行处理的时候,不会出现莫名其妙的bug。

    如数字可以(+-*/,加减乘除)

  英文和数字字符可以转换成ascii对应的数字,然后才可以相加,首先的明白,数字本身就可以进行数学运算

有多少种数据类型?

--可以分为三大类

  1. 数字

    --整数(int)、浮点数(float)

# 整数 int
num_1 = 12345
# 浮点数 float
num_2 = 123.45

  2. 字符串

     --文字字符组合

# 字符串 str
str_1 = 'Hello  Word!'

  3. 序列(列表,元组,字典,集合)

# 列表 list
list_a = [1, 2, 3]
# 元组 tuple
tuple_b = (1, 2, 3)
# 字典 dict
dict_c = {'1': 1, '2': 2, '3': 3}
# 集合 set
set_d = {1, 2, 3}

  4. 二进制      -- bytes   图片、视频、音频

# bytes
bytes_a = b'123456'

    -- python3.x 默认编码是unicode,严格区分str和bytes类型,网络传输格式必须是bytes类型

  5. 布尔值

    -- True/False

# boolean
a = True
b = False
print(a, b)

# True 1, False 0
if True == 1:
    print("True is 1")
else:
    print("True is not 1")
if False == 0:
    print('False is 0')
else:
    print("Flase is not o")

bytes和str类型如何相互转换?

  -- python3.x 中网络传输必须是bytes类型

    -- "字符".encode("utf-8")    -- 字符转二进制

    -- "bytes".decode("utf-8")    -- 二进制转字符

hello = '你好,世界'

# 转换成bytes
b_hello = hello.encode('utf-8')
# 或 b_hello = bytes(hello, encoding='utf-8')

# bytes转换成 字符
c_hello = b_hello.decode('utf-8')

  -- 在python2 下,str类型为python3下bytes,bytes为python3下str

类型之间有哪些运算方式?

  -- 数字  

    -- “ +  -  *  /  //  %  **  ”

    --  加、减、乘、真除法、地板除、取余、幂、  -- 优先级和数学上一样

# 字符串拼接, / 真除法, // 地板除
num_01 = 15
print(num_01/2, num_01//2)

  -- 字符串

    -- " + "  -- 字符串的拼接

# 字符串拼接
hello = 'Hello'
word = 'Word'
print(hello + ' ' + word)

变量命名有什么潜规则?

  --不能是关键字

    ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec',

    'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass',

     'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

  循环分支: and, break, continue, if, elif, else, for, in, is, not, or, while

  异常处理: assert, try, except, as, finally, raise

  面向对象: class, def

  文件相关: open, with

  --不能以数字开头,大小写字母,下划线,数字

    -- 被c语言潜规则了

    如Apple_7,合法。7Ass,8-s,a-7sA,不合法

  --必须命名简明,见名知意

注意点: python3 中中文名可以直接当变量名

python_变量的更多相关文章

  1. python_变量的命名规则

    python 变量的命名规则: 1. 要具有描述性 2.变量名只能由 数字,字母 ,下划线 组成,不可以是空格或者特殊字符(#!%……&) 3.不能以数字开头 4.保留字符不可用(print ...

  2. Python_变量命名

    Python的变量命名 变量的命名的原则一直都是我这种小白的头疼事,好几条,根本记不住...... 为了解决大家的头疼问题,今天想出来一个好办法,那就是:身边常备头疼片.......(哈哈哈,开玩笑的 ...

  3. Python_变量作用域

    1.变量作用域: def get_apple(name,*b): global totalCount totalCount=0 for num in b: print('............... ...

  4. Python_变量作用域与修改

    引用全局变量,不需要golbal声明,修改全局变量,需要使用global声明,特别地,列表.字典等如果只是修改其中元素的值(而不是整体赋值的形式),可以直接使用全局变量,不需要global声明. 参考 ...

  5. 6 小时 Python 入门

    6 小时 Python 入门 以下操作均在 Windows 环境下进行操作,先说明一下哈 一.安装 Python 1.官网下载 Python 进入官网(https://www.python.org), ...

  6. python_判断变量类型

    需求: 已知有一个变量,我想对他进行预处理判断,如果这个变量是字符串,则在字符串后面加上后缀'_str',如果整形就让其加5,还比如我要求这个变量是整形或者字符串,都行 如何做? #!/usr/bin ...

  7. Python_关于多线程下变量赋值取值的一点研究

    关于多线程下变量赋值取值的一点研究 by:授客 QQ:1033553122 1.代码实践1 #!/usr/bin/env python # -*- coding:utf-8 -*- __author_ ...

  8. python线程条件变量Condition(31)

    对于线程与线程之间的交互我们在前面的文章已经介绍了 python 互斥锁Lock / python事件Event , 今天继续介绍一种线程交互方式 – 线程条件变量Condition. 一.线程条件变 ...

  9. In-Memory:在内存中创建临时表和表变量

    在Disk-Base数据库中,由于临时表和表变量的数据存储在tempdb中,如果系统频繁地创建和更新临时表和表变量,大量的IO操作集中在tempdb中,tempdb很可能成为系统性能的瓶颈.在SQL ...

随机推荐

  1. Java学习笔记8(面向对象一:概念、private)

    面向过程的思想:遇到问题,想,我该怎么解决这个问题?然后一步一步解决 面向对象的思想:遇到一件事的时候,思考,我该让谁来做,至于他怎样去做,不是我需要考虑的事情,只要最后做好就行 实际举例:我们要组装 ...

  2. Java分布式应用技术架构

    分布式架构的演进 系统架构演化历程-初始阶段架构初始阶段 的小型系统 应用程序.数据库.文件等所有的资源都在一台服务器上通俗称为LAMP特征:应用程序.数据库.文件等所有的资源都在一台服务器上.描述: ...

  3. js中常用的操作字符串的方法大全

    charCodeAt()返回一个整数,代表指定字符的Unicode编码 fromCharCode()从一些Unicode字符串得到一个字符串  charAt()根据指定下标位置返回对应字符,如果下标超 ...

  4. Zabbix实战-简易教程--宏变量(Macro)

    一.概述 Zabbix支持许多在多种情况下使用的宏.宏是一个变量,由如下特殊语法标识:MACRO 有效地使用宏可以节省时间,并使Zabbix变地更加高效. 在一个的典型用途中,宏可以用于模板中.因此, ...

  5. Django----->一周后的重温

    Django   一 什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来 ...

  6. java字符串比较

    我最近刚学java,今天编程的时候就遇到一个棘手的问题,就是关于判断两个字符串是否相等的问题.在编程中,通常比较两个字符串是否相同的表达式是"==",但在java中不能这么写.在j ...

  7. isupper()函数

    isupper()函数可以用来判断字符c是否为大写英文字母! 原型:extern int isupper(int c); 头文件:ctype.h 功能:判断字符c是否为大写英文字母 说明:当参数c为大 ...

  8. COGS 1299. bplusa【听说比a+b还要水的大水题???】

    1299. bplusa ☆   输入文件:bplusa.in   输出文件:bplusa.out   评测插件 时间限制:1 s   内存限制:128 MB [题目描述] 输入一个整数n,将其拆为两 ...

  9. 51Nod 1046 A^B Mod C(日常复习快速幂)

    1046 A^B Mod C 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出3个正整数A B C,求A^B Mod C. 例如,3 5 8,3^5 Mod 8 = ...

  10. hdu_2668 Daydream O(n)求最长不重复子串

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2668 Daydream Time Limit: 2000/1000 MS (Java/Others)  ...