代码第三天

目录

1、数字

var: 

2、Python 支持三种不同的数值类型:

3、运算

4、数学函数

5、随机数函数

6、三角函数

7、数学常量

2、字符串

1、转义字符

2、字符串运算符

3、列表

4、元组

5、字典


1、数字

var: 

用于声明一个函数范围或全局范围的变量,并可将其初始化为一个值(可选)。

  1. 使用var声明变量,在方法内部是局部变量,在方法外部是全局变量

  2. 没有使用var声明的变量,在方法内部或外部都是全局变量,但如果是在方

  3. 法内部声明,在方法外部使用之前需要先调用方法,告知系统声明了全局变量后方可在方法外部使用。

  4. 在函数作用域内 加var定义的变量是局部变量,不加var定义的就成了全局变量

  5. 在function内部, 加var的是局部变量, 不加var的则是全局变量;

  6. 在function外部, 不管有没有使用var声明变量,都是全局变量,在function外部,var关

  7. 键字一般可以省略,但是为了书写规范和维护方便以及可读性好,我个人不建议省略var关键字!

  8. 可以使用del语句删除一些数字对象的引用。

    del语句的语法是:

    del var1[,var2[,var3[....,varN]]]

    单个或多个对象

    del var
    del var_a, var_b
    #var a 是错误输入法

2、Python 支持三种不同的数值类型:

整型(int) - 可以当作 Long 类型使用, Python3 没有 Python2 的 Long 类型。布尔(bool)是整型的子类型。

浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

我们可以使用十六进制和八进制来代表整数:

>>>number=0xBA7
        
>>>number
        
2983
>>>number=0o87   #错误是因为这是八进制,我写了个8超范围了
        
SyntaxError: invalid digit '8' in octal literal
>>>number=0x45
        
>>>number
        
69

complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。

>>>a=16
        
>>>complex(a)
        
(16+0j)
>>>b=17
        
>>>complex(a,b)
        
(16+17j)

3、运算

>>>2+3
        
5
>>>5/2
        
2.5
>>>5//2   #除后取整
        
2
>>>5.0//2  #这个运算符跟数的浮点类型一样

        
2.0
>>>a=2
        
>>>b=4
        
>>>a*b
        
8
>>>a==b  #数学的等于,但这里不等于,所以输出False
        
False
>>>a=b   #赋值
>>>a
        
4
>>>2**4    #2的四次方
        
16
>>>n   #需要赋值
        
Traceback (most recent call last):
  File "<pyshell#59>", line 1, in <module>
    n
NameError: name 'n' is not defined
>>>n=int a
        
SyntaxError: incomplete input
>>>n=int(a)
        

>>>n
        
4
>>>3*0.5
        
1.5
>>>3.0/3
        
1.0
>>>a=11
        
>>>b=23.5
        
>>>b*a
        
258.5
>>>b+_     #交互模式中,最后被输出的表达式结果被赋值给变量 _ , _ 变量应被视为只读变量
        
282.0
>>>round(_,2)
        
282.0

>>>a=23.5678
        
>>>round(a,2)  #小数点后几位数
        
23.57

4、数学函数

函数返回值 ( 描述 )
abs(x)返回数字的绝对值,如abs(-10) 返回 10
ceil(x)返回数字的上入整数,如math.ceil(4.1) 返回 5

(x>y)-(x<y)

如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。
exp(x)返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x)以浮点数形式返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x)返回数字的下舍整数,如math.floor(4.9)返回 4
log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...)返回给定参数的最大值,参数可以为序列。
min(x1, x2,...)返回给定参数的最小值,参数可以为序列。
modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y)x**y 运算后的值。
round(x [,n])

返回浮点数 x 的四舍五入值,如给出 n 值,则代表舍入到小数点后的位数。

其实准确的说是保留值将保留到离上一位更近的一端。

sqrt(x)返回数字x的平方根。

5、随机数函数

随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

函数描述
choice(seq)从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
randrange ([start,] stop [,step])从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
random()随机生成下一个实数,它在[0,1)范围内。
seed([x])改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst)将序列的所有元素随机排序
uniform(x, y)随机生成下一个实数,它在[x,y]范围内。

6、三角函数

函数描述
acos(x)返回x的反余弦弧度值。
asin(x)返回x的反正弦弧度值。
atan(x)返回x的反正切弧度值。
atan2(y, x)返回给定的 X 及 Y 坐标值的反正切值。
cos(x)返回x的弧度的余弦值。
hypot(x, y)返回欧几里德范数 sqrt(x*x + y*y)。
sin(x)返回的x弧度的正弦值。
tan(x)返回x弧度的正切值。
degrees(x)将弧度转换为角度,如degrees(math.pi/2) , 返回90.0
radians(x)将角度转换为弧度

7、数学常量

常量描述
pi数学常量 pi(圆周率,一般以π来表示)
e数学常量 e,e即自然常数(自然常数)。

2、字符串

>>>var1="hello python"
        
>>>var2="CSDN"
        
>>>var1[0]
        
'h'

>>>var1[5]  #空格也是字符,占据空间
        
' '


>>>var1[1:4]
        
'ell'
>>>var2[-1]
        
'N'
>>>print("已更新字符串:",var1[:6]+'var2')  #从第六个开始变
        
已更新字符串: hello var2
>>>print("已更新字符串:",var1[:6]+var2)
        
已更新字符串: hello CSDN

1、转义字符

在需要在字符中使用特殊字符时,python 用反斜杠 \ 转义字符。如下表:

转义字符描述
\(在行尾时)续行符
\\反斜杠符号
\'单引号
\"双引号
\a响铃
\b退格(Backspace)
\000
\n换行
\v纵向制表符
\t横向制表符
\r回车,将 \r 后面的内容移到字符串开头,并逐一替换开头部分的字符,直至将 \r 后面的内容完全替换完成。
\f换页
\yyy八进制数,y 代表 0~7 的字符,例如:\012 代表换行。
\xyy十六进制数,以 \x 开头,y 代表的字符,例如:\x0a 代表换行
\other其它的字符以普通格式输出

' '
>>>var1\
        var2
        
SyntaxError: incomplete input

>>>print(var1\
      var2)
        
SyntaxError: invalid syntax. Perhaps you forgot a comma?
>>>print("var1\var2
      
SyntaxError: incomplete input
>>>print("var1\
var2")
      
var1var2
>>>print("var1 \
var2")
      
var1 var2
>>>print"var1\\var2")
        
SyntaxError: unmatched ')'
>>>print("var1\\var2")
        
var1\var2
>>>print('var\'')
        
var'
>>>print("\"")
        
"
>>>print("\a")
        

>>>print("\000")
        

>>>print("hello\npython")
        
hello
python
>>>print("hello python\n")
        
hello python

>>>print("hello python"\n)
        
SyntaxError: unexpected character after line continuation character
print("hello\vpython")
        
hellopython
>>>print("hello \v python")
        
hello  python
>>>print("hello\tpython")
        
hello	python
>>>print("hello\rpython")
        
hello
python
>>> print("Hello\rWorld!")
        
SyntaxError: unexpected indent
>>>print("Hello\rWorld!")
        
Hello
World!
>>>print('google runoob taobao\r123456')
        
google runoob taobao
123456
>>>print('google runoob taobao \r 123456')
        
google runoob taobao 
 123456
>>>print("hello\fpython")
        
hellopython
>>>print("hello\yyy")
        
hello\yyy
>>>print("\110\145\154\154\157\40\127\157\162\154\144\41")
        
Hello World!

2、字符串运算符

下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python":

操作符描述实例
+字符串连接a + b 输出结果: HelloPython
*重复输出字符串a*2 输出结果:HelloHello
[]通过索引获取字符串中字符a[1] 输出结果 e
[ : ]截取字符串中的一部分,遵循左闭右开原则,str[0:2] 是不包含第 3 个字符的。a[1:4] 输出结果 ell
in成员运算符 - 如果字符串中包含给定的字符返回 True'H' in a 输出结果 True
not in成员运算符 - 如果字符串中不包含给定的字符返回 True'M' not in a 输出结果 True
r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。
print( r'\n' )
print( R'\n' )
%格式字符串

3、列表

a=['blue','yello','red']

num=[10,20,30,40]

4、元组

tuple=('abc','cde','bes')

tuple=("abc","cad")

tup=(1,2,3,4)

tup="a","b","c"

5、字典

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中

d = {key1 : value1, key2 : value2, key3 : value3 }
>>>emptyDict1={}
>>>emptyDict2={'name':tang,'age':20,'class':4}
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    emptyDict2={'name':tang,'age':20,'class':4}
NameError: name 'tang' is not defined. Did you mean: 'range'?
>>>emptyDict2={'name':'tang','age':20,'class':4}
>>>print(emptyDict1)
{}
>>>print(emptyDict2)
{'name': 'tang', 'age': 20, 'class': 4}
>>>print("Length:",len(emptyDict))
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
>>>print("Length:",len(emptyDict))
NameError: name 'emptyDict' is not defined. Did you mean: 'emptyDict1'?
>>>print("Length:",len(emptyDict1))
Length: 0
>>>print("Length:",len(emptyDict2))
Length: 3
>>>print(type(emptyDict1))
<class 'dict'>
>>>print(type(emptyDict1))
<class 'dict'>
>>>print(type(emptyDict2))
<class 'dict'>
>>>print ("tinydict['Name']: ", tinydict['Name'])
>>>print ("tinydict['Age']: ", tinydict['Age'])
SyntaxError: multiple statements found while compiling a single statement
>>>print ("emptyDict2['Name']: ", emptyDict2['Name'])
>>>print ("emptyDict2['Age']: ", emptyDict2['Age'])
SyntaxError: multiple statements found while compiling a single statement
>>>print ("emptyDict2['Name']: ", emptyDict2['Name'])
Traceback (most recent call last):
  File "<pyshell#13>", line 1, in <module>
>>>print ("emptyDict2['Name']: ", emptyDict2['Name'])
KeyError: 'Name'
>>>print ("emptyDict2['name']: ", emptyDict2['name'])
emptyDict2['name']:  tang
>>>print ("emptyDict2['age']: ", emptyDict2['age'])
emptyDict2['age']:  20
>>>print ("emptyDict2['people']: ", emptyDict2['peopie'])
Traceback (most recent call last):
  File "<pyshell#16>", line 1, in <module>
>>>print ("emptyDict2['people']: ", emptyDict2['peopie'])
KeyError: 'peopie'
>>>emptyDict2['age']=21
>>>emptyDict['school']="nanjing"
Traceback (most recent call last):
  File "<pyshell#18>", line 1, in <module>
    emptyDict['school']="nanjing"
NameError: name 'emptyDict' is not defined. Did you mean: 'emptyDict1'?
>>>emptyDict2["school"]='nanjing'
>>>print("emptyDict2['age']:".emptydict2['age'])
Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
>>>print("emptyDict2['age']:".emptydict2['age'])
AttributeError: 'str' object has no attribute 'emptydict2'
>>>print("emptyDict2['age']:".emptyDict2['age'])
Traceback (most recent call last):
  File "<pyshell#21>", line 1, in <module>
>>>print("emptyDict2['age']:".emptyDict2['age'])
AttributeError: 'str' object has no attribute 'emptyDict2'
>>>print ("emptyDict2['age']: ", emptyDict2['age'])
emptyDict2['age']:  21
>>>print ("emptyDict2['school']: ", emptyDict2['school'])
emptyDict2['school']:  nanjing
>>>del emptyDict2['name']
>>>print("emptyDict2删除name键后:",emptyDict2)
emptyDict2删除name键后: {'age': 21, 'class': 4, 'school': 'nanjing'}
>>>emptyDict2.clear()
>>>print("emptyDict2清空后:",emptyDIct2)
Traceback (most recent call last):
  File "<pyshell#27>", line 1, in <module>
>>>print("emptyDict2清空后:",emptyDIct2)
NameError: name 'emptyDIct2' is not defined. Did you mean: 'emptyDict2'?
>>>print("emptyDict2清空后:",emptyDict2)
emptyDict2清空后: {}
>>>del emptyDIct2
Traceback (most recent call last):
  File "<pyshell#29>", line 1, in <module>
>>>del emptyDIct2
NameError: name 'emptyDIct2' is not defined. Did you mean: 'emptyDict2'?
>>>del emptyDict
Traceback (most recent call last):
  File "<pyshell#30>", line 1, in <module>
>>>del emptyDict
NameError: name 'emptyDict' is not defined. Did you mean: 'emptyDict1'?
>>>del emptyDict2
>>>print("emptyDict2删除字典后:",emptyDict2)
Traceback (most recent call last):
  File "<pyshell#32>", line 1, in <module>
>>>print("emptyDict2删除字典后:",emptyDict2)
NameError: name 'emptyDict2' is not defined. Did you mean: 'emptyDict1'?

注意点:

1、不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

2、键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行

函数

序号函数及描述
1len(dict)
计算字典元素个数,即键的总数。
2str(dict)
输出字典,可以打印的字符串表示。
3type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。

Python字典包含了以下内置方法:

序号函数及描述
1dict.clear()
删除字典内所有元素
2dict.copy()
返回一个字典的浅复制
3dict.fromkeys()
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
4dict.get(key, default=None)
返回指定键的值,如果键不在字典中返回 default 设置的默认值
5key in dict
如果键在字典dict里返回true,否则返回false
6dict.items()
以列表返回一个视图对象
7dict.keys()
返回一个视图对象
8dict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9dict.update(dict2)
把字典dict2的键/值对更新到dict里
10dict.values()
返回一个视图对象
11pop(key[,default])
删除字典 key(键)所对应的值,返回被删除的值。
12popitem()
返回并删除字典中的最后一对键和值。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值