Python-Project-2-学习笔记

[TOC]

本次的重点是,Python 变量

变量命名规则

  • 可以包括任何字母或数字a-zA-Z0-9)以及下划线_
  • 不能数字开头
  • 不能和其它 Python 保留的特殊名字冲突
  • 特殊的:以中文命名在语法中是被允许的,但是一般不建议使用中文来命名变量

Python 保留字

常见 Python 保留的特殊名字有:

  • 循环控制:for, while, break, pass, continue
  • 介词逻辑:in, is, not
  • 条件分支:if, else, elif
  • 结构化编程:def, class, return, yield, raises
  • 模块管理与资源调用:import, from, as, with
  • 异常处理:try, except, finally

变量命名—合法/非法—举例

  • data:合法
  • _data2:合法
  • Apple_data:合法
  • 2data不合法 (不能以数字开头)
  • I.am.data不合法 (不能包含非法字符英文句号.)
  • new data不合法(不能包含非法字符空格
  • 34000不合法 (不能以数字开头)
  • old-data不合法(不能包含非法字符短横线-
  • 1_data不合法 (不能以数字开头)
  • john's_data不合法(不能包含非法字符单引号'
  • new@不合法(不能包含非法字符电邮号@
  • ^data不合法(不能包含非法字符控制符^

代码实践验证

new data = 1
print("%s is %d"%("new data",new data))
34000 = 2
print("%s is %d"%("34000",34000))
old-data = 3
print("%s is %d"%("old-data",old-data))
1_data = 4
print("%s is %d"%("1_data",1_data))
john's_data = 5
print("%s is %d"%("john's_data",john's_data))
new@ = 6
print("%s is %d"%("new@",new@))
^data = 7
print("%s is %d"%("^data",^data))

变量赋值

  • 使用赋值号=可以为变量赋初值或者重新赋值——x = 1
  • 使用加减乘除的快捷更新法+= -= *= /=
    • 快捷更新法不可用于赋初值

代码实践验证

data1=65
print("data1 is %d" % data1)
data1+=75
print("data1 is %d" % data1)
data1-=57
print("data1 is %d" % data1)

变量类型

  • 变量有不同的数据类型,如整数int,小数浮点数float
  • 使用 type(...)可以获取变量的数据类型
  • 不同的数据类型不是肯定不能一起运算的,intfloat就可以一起运算。

代码实践验证

data3=65
print(type(data3))
data3+=(75.9-data3)
print(type(data3))
data3-=(data3-57.6)
print(type(data3))

变量类型转换

  • Python中数字的类型有 intfloat
  • 数字之间可以用 int(...)float(...) 进行强制类型转换
  • round(...)int(...) 一样,可以把 float 转换为 int
  • int(...)抹去小数部分,而 round(...)四舍五入
    • int(1.9) = 1
    • round(1.9)=2
  • 特殊的,round(2.5) = 2 而不是 3,因为计算机用二进制表示2.5,实际上表示出来的数会比2.5小一点点一点点。

代码实践验证

data6=12.9
print(type(data6))
print(int(12.9))
data6=int(12.9)
print(type(data6))
print(data6)

定义字符串变量

  • 将字符串用 单引号'' 或者 双引号"" 包裹即可
  • 一般而言,建议尽量使用 双引号""
  • type("这是一个字符串") = str
  • 字符串不仅仅可以存储英文字母表中的字母,也能存储标点符号、数字
  • 不那么严谨的说:
    • 只要是能写在TXT里的,就都能被存储进字符串
    • 只有你想不到,没有它存不了

代码实践验证

app_name6="Pandora - Music & Radio"
print("%s is \"%s\",it's type is %s"%("app_name6",app_name6,type(app_name6)))

字符串的嵌套

  • 双引号可以内嵌单引号,单引号不能内嵌双引号
  • 想在字符串中使用单引号或双引号作为内容,可以使用转义符/
  • /' /" // /n /t
  • 或者,用r'...' 中的这个神奇的 r 来保证字符串中的所有内容都所见即所得

代码实践验证

print("—————————— 分割线 ——————————————")
print('\\\t\\')
print("—————————— 分割线 ——————————————")
print(r'\\\t\\')
print("—————————— 分割线 ——————————————")
print("hi...\n...bye")

字符串运算:连接

  • 使用 运算符+ 可以简单的连接两个字符串
  • 字符串和数字不能直接连接
  • 可以用 int(...) 转换字符串为数字,或者用 str(...) 转换数字为字符串,而后连接
  • 特殊的:Python有直接的格式化字符串生成语法
    • "Format Str" % ( params... )
    • %d %s %f \n \t common str % (int,float,str)

代码实践验证

data9="Facebook's rating is"
print(data9)
data10=3.5
print(data10)
print("——————————————————————————————————")
print(data9+" "+str(data10))
print("%s %.1f"%(data9,data10))

官方总结

语法

  • 将值存储到变量:
twenty = 20
result = 43 + 2**5
currency = 'USD'
  • 更新存储在变量中的值:
x = 30
x += 10 # 与 x = x + 10 相同
  • 四舍五入数字:
round(4.99) # 输出:5
  • 使用引号创建字符串:
app_name = "Clash of Clans"
app_rating = '3.5'
  • 连接两个或多个字符串:
print('a' + 'b') # 打印出:ab
print('a' + 'b' + 'c') # 打印出:abc
  • 在变量类型之间转换:
int('4')
str(4)
float('4.3')
str(4.3)
  • 查找值的类型:
type(4)
type('4')

概念

  • 我们可以将数据赋值给变量,这个变量会存储在计算机内存中。
  • 命名变量时,需要注意以下语法规则:
    • 可以包括任何字母或数字(a-zA-Z0-9)以及下划线(_);
    • 不能以数字开头;
    • 不能和其它 Python 保留的特殊名字冲突。
  • = 运算符的含义与数学中的含义是不同的。在 Python 中,= 运算符是赋值的意思,即将右侧的值分配给左侧的变量,但并非是 “等于” 或 “平等” 的意思。
  • 数据有整数 int 类型、浮点数 float 类型等,不同类型的数值可以互转,不同类型的数值也可以相加,但是数字和字符之间不能直接相加。
  • 英文字母、数字、特殊字符都是字符,字符串可以存储任何字符,因此字符串不仅仅可以存储英文字母表中的字母,也能存储标点符号、数字!
  • 字符串是以单引号 ' 或双引号 " 括起来的任意文本,可以通过 + 让两个或多个字符串相连接,但切记只有相同类型之间的数据可以相加。
  • 转义字符 \ 可以转义很多字符,比如 \' 表示 '\" 表示 "\n 表示换行,\t 表示制表符,如果字符 \ 本身也要转义,所以 \\ 表示的字符就是\