​python基础之定义变量

学习目录

变量命名的通用原则

变量的常见用法

·定义普通变量

·同时赋值多个变量

·变量解包

·单下划线变量名_

查看变量类型

查看变量的内存地址

前言

变量是编程语言最基础的知识,也是最难的知识,主要体现在变量命名。在计算机科学领域有一句广为流传格言:

               计算机科学领域只有两件难事:缓存失效和命名。

                                                                 --- Phil Karlton

    变量命名确实让人头疼,平常使用中经常会出现乱命名的现象,但是在使用时我们还是要了解下   命名规范和规则,以便让我们看起来专业一些。

     因为python是一门动态类型的编程语言,无须事先声明变量类型,比如整形int 字符串str 或者浮点型float,又或者list dict set tuple等,直接对变量赋值即可。

变量命名的通用原则

1 遵循PEP 8原则。

1)一是通过大小写界定单词的驼峰命名法。例如UserName。

2)二是通过下划线连接的蛇形命名法。例如user_name,MAX_VALUE

为了保持代码可读性,不管是用哪个方法,最重要是保持统一。

2 注意大小写。

Python的变量名是区分大小写的,例如:name和Name就是两个变量名,而非相同变量。

3 描述性要强,要让读者看起来更轻松更明了。例如定义username='jams',比aaa='jams'更清晰。

4 避免定义过长的变量名。

例如定义
users_needed_update_points_level3=3,描述了为不同级别的用户更新积分的设置,其实可以更简单的提取关键字,定义为points_level3=3。

变量的常见用法

  • 定义普通变量

 #号是注释语句

username = '章三'
#打印 

print('hello {}'.format(username))

hello 章三
  • 赋值给两个变量

username1=username2='jams'             

print(username1,username2)            

jams jams
  • 同时赋值多个变量

同时赋值两个变量

username,age = '里斯本',14

#打印

print('姓名:{},年龄:{}'.format(username,age))

姓名:里斯本,年龄:14

交换两个变量

username_nj='jams'

username_sh='lizy'


username_nj,username_sh = username_sh,username_nj

#交换变量后打印

print(username_nj,username_sh)

lizy jams
  • 变量解包

变量解包是一种特殊赋值操作,可以把一个可迭代对象(比如list)的成员,一次性赋值给多个变量。

  • 定义一个普通列表
usernames = ['jams','lizy']

变量解包,赋值给两个变量

username_nj,username_sh = usernames

#注意 左边的变量个数需要与右边的可迭代对象个数一致,否则报错

print(username_nj,username_sh)

jams lizy

#个数不一致 就报错,比如赋值给3个变量

username_nj,username_sh,username_zj = usernames

Traceback (most recent call last):

  File "<pyshell#23>", line 1, in <module>

    username_nj,username_sh,username_zj = usernames

ValueError: not enough values to unpack (expected 3, got 2)
  • 定义一个嵌套列表
username_info = ['jams',['南京','某小区']]

1)在变量前面使用括号接收嵌套的变量内容

username,(city,address) =username_info

#打印

print(username,city,address)         

jams 南京 某小区

2)支持使用*表达式接收变量内容,并将接收的变量内容以列表展示。

username_info = ['jams','man','180cm',18,['南京','某小区']]

定义*personinfo接收人员信息       

username,*personinfo,address=username_info

#打印         

print(personinfo)

#结果展示为一个列表             

['man', '180cm', 18]

3)列表也可以使用切片进行赋值

#定义一个数字列表

numbers = [2,33,44,22,455]

#获取列表中第2个和第3个值赋值给新变量                 

new_numbers = numbers[2:4]

#打印                

print(new_numbers)                 

[44, 22]
  • 单下划线变量名_

 使用单下划线变量忽略某些变量 

numbers = [2,33,44,22,455]

#忽略第2个及后面的所有变量

number,*_ =numbers

#打印变量number                 

print(number)              

2

#打印变量_
print(_)         

[33, 44, 22, 455]

查看变量类型

使用内置函数type查看变量的类型

#定义整形变量

number = 1

print(type(number))              

<class 'int'>


#定义字符串变量
strvalue = 'age'           
print(type(strvalue))              

<class 'str'>

#定义列表变量

numbers = [2,33,44,22,455]

print(type(numbers))              

<class 'list'>

查看变量的内存地址

使用内置函数id查看变量的内存地址

numbers = [2,33,44,22,455]

print(id(numbers))            

4303168576

多个变量指向同一个内存地址

username1=username2='jams'

print(id(username1),id(username2))             
 4348151280 4348151280

​​​​​​​

----感谢读者的阅读和学习,谢谢大家。

共勉: 东汉·班固《汉书·枚乘传》:“泰山之管穿石,单极之绠断干。水非石之钻,索非木之锯,渐靡使之然也。”

-----指水滴不断地滴,可以滴穿石头;

-----比喻坚持不懈,集细微的力量也能成就难能的功劳。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值