python基础

1.十六进制:十六进制用0x前缀和0-9a-f表示,例如:0xff000xa5b4c3d2,等等。

2.转义字符:转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\

不转义字符:如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r''表示''内部的字符串默认不转义,例如:print(r'\\\123\\\t')

多行显示字符:,Python允许用'''...'''的格式表示多行内容,

>> print('''line1

... line2

... line3''')

line1

line2

line3

  

3.除法   /  结果保留浮点数

整除 // 结果保留整数

求余 %    得到两个整数相除的余数

4.格式化字符串:

我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。

1% 字符格式化字符串

常用的占位符:

整数 %d; 浮点数  %f;   字符串  %s; 十六进制整数   %x;百分号  %%;

%02d   表示补0成为2位数的整数:print('%02d' % (1))-->01

%.2f   表示补0成为2位数的浮点数:print('%.2f' % (3.1415926))-->3.14

2format() 格式化字符串

format()它会用传入的参数依次替换字符串内的占位符{0}{1}……,

例如:

print('Hello,{0}成绩提升了{1:.2f}%'.format('小明',35.567))-->Hello,小明成绩提升了35.57%

3f-string 格式化字符串

使用以f开头的字符串,称之为f-string,它和普通字符串不同之处在于,字符串如果包含{xxx},就会以对应的变量替换

例如:

r =2.5

print(f'name is {r:.2f}') -->  name is 2.50

  

4.格式化字符串:

我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。

1% 字符格式化字符串

常用的占位符:

整数 %d; 浮点数  %f;   字符串  %s; 十六进制整数   %x;百分号  %%;

%02d   表示补0成为2位数的整数:print('%02d' % (1))-->01

%.2f   表示补0成为2位数的浮点数:print('%.2f' % (3.1415926))-->3.14

2format() 格式化字符串

format()它会用传入的参数依次替换字符串内的占位符{0}{1}……,

例如:

print('Hello,{0}成绩提升了{1:.2f}%'.format('小明',35.567))-->Hello,小明成绩提升了35.57%

3f-string 格式化字符串

使用以f开头的字符串,称之为f-string,它和普通字符串不同之处在于,字符串如果包含{xxx},就会以对应的变量替换

例如:

r =2.5

print(f'name is {r:.2f}') -->  name is 2.50

  

5.list tuple

列表:list是一种有序集合,可以随时添加和删除其中的元素,list中的元素,从索引0开始。

l=[1,2.3]

len()函数可以获得list元素的个数:len(l)-->3

取最后一个元素:l[-1]-->3

【追加元素至末尾】:.append( "tom")

【添加元素至指定下标位】:.insert(1,"tom")

【删除末尾元素】:.pop()

【删除指定位置元素】:.pop(1)

【替换元素】:>>> classmates[1] = 'Sarah'

tuple:元组,一旦初始化不能修改

 

只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:t(1,)

6.条件判断

if ...  :

else...:   end

if....:

elif....:

else..:   .end

 

7.输入函数 input( )

birth = input('birth: ')

 

读入的 birth str 类型

 

8.循环

for ...in..循环】

例如:求和

sum = 0

for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:

    sum = sum + x

print(sum)

 

  

range 函数】

输出指定范围的数值,从0开始,不包括最大值。

l=list(range(0,5))  

print(l)

>>[0, 1, 2, 3, 4]

  

while循环】

只要条件满足,就不断循环,条件不满足时退出循环。

100内奇数 的和:

sum = 0

n = 99

while n > 0:

    sum = sum + n

    n = n - 2

print(sum)

  

 

(死循环:while True

break 退出循环】提前结束循环

例如:打印1~10数字

n = 1

while n <= 100:

    if n > 10: # 当n = 11时,条件满足,执行break语句

        break # break语句会结束当前循环

    print(n)

    n = n + 1

print('END')

  

continue 执行下次循环】天国当前这次循环,执行下次循环

例如:打印1~10,只打印奇数

n = 0

while n < 10:

    n = n + 1

    if n % 2 == 0: # 如果n是偶数,执行continue语句

        continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行

    print(n)

-->>1,3,5,7,9

 

  

9.  使用dict(字典) set(key)

dict 字典】使用键-值(key-value)存储,具有极快的查找速度。

 

创建字典: d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}

 

in 判断key是否存在】:

'Thomas' in d  -->False

get 返回key的值】:

d.get('Thomas') --->None

d.get('Bob')  --->75

 

pop 删除键值对】:

>>> d.pop('Bob')

75

>>> d

{'Michael': 95, 'Tracy': 85}

 

set:存储key 的集合

定义set:

>>> s = set([1, 2, 3])

>>> s

{1, 2, 3}

重复元素在set中自动被过滤:

>>> s = set([1, 1, 2, 2, 3, 3])

>>> s

{1, 2, 3}

add 添加元素】

>>> s.add(4)

>>> s

{1, 2, 3, 4}

remove 删除元素】

>>> s.remove(4)

>>> s

{1, 2, 3}

 

set 求交集】

>>> s1 = set([1, 2, 3])

>>> s2 = set([2, 3, 4])

>>> s1 & s2

{2, 3}

set 求并集】

>>> s1 = set([1, 2, 3])

>>> s2 = set([2, 3, 4])

>>> s1 | s2

{1, 2, 3, 4}

【不可变对象 str

 

 

【可变对象 list

 

 

 

  1. 函数

【查看函数用法 help:

help(abs)-->

Help on built-in function abs in module builtins:

 

abs(x, /)

    Return the absolute value of the argument.

【数据类型转换】:

把其他数据类型转换为整数:int(x)

转换成浮点型:float( x )

转换成字符型:str( x )

转换成布尔型:bool( x )

转换成16进制:hex( x )

【给函数起别名引用】:

>>> a = abs # 变量a指向abs函数

>>> a(-1) # 所以也可以通过a调用abs函数

1

【定义函数】:

Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。

def my_abs(x):

    if x >= 0:

        return x

    else:

        return -x

函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。

 

【导入函数】:

如果你已经把my_abs()的函数定义保存为abstest.py文件了,那么,可以在该文件的当前目录下启动Python解释器,用from abstest import my_abs来导入my_abs()函数,注意abstest是文件名(不含.py扩展名):

abstest.py文件中定义函数:

───────────────────────────────────────────────────┤

>>> def my_abs(x):                                      

...     if x >= 0:                                      

...         return x                                    

...     else:                                           

...         return -x

导入函数:

>>> from abstest import my_abs                          

>>> my_abs(-9)                                          

9                

【空函数】:用pass语句:

 

def nop( ):

    pass

pass做占位符】

pass可以用来作为占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来。

例如:

if age >= 18:

    pass

 

【返回多个值】

函数可以同时返回多个值,但其实就是一个tuple

 

【函数的参数】

【位置参数】调用函数时,传入的两个值按照位置顺序依次赋给参数xn

例如:用来计算xn次方

def power(x, n):

    s = 1

    while n > 0:

        n = n - 1

        s = s * x

    return s

 

>>> power(5, 2)

25

【默认参数】

默认参数可以简化函数的调用。设置默认参数时,有几点要注意:

 

一是必选参数在前,默认参数在后,否则Python的解释器会报错(思考一下为什么默认参数不能放在必选参数前面);

 

二是如何设置默认参数。

 

当函数有多个参数时,把变化大的参数放前面,变化小的参数放后面。变化小的参数就可以作为默认参数。

例如:

def power(x, n=2):

    s = 1

    while n > 0:

        n = n - 1

        s = s * x

    return s

 

【可变参数】

仅仅在参数前面加了一个*号,允许你传入0个或任意个参数。在函数内部,参数numbers接收到的是一个tuple

 

例如:

def calc(*numbers):

    sum = 0

    for n in numbers:

        sum = sum + n * n

    return sum

 

Python允许你在listtuple前面加一个*号,把listtuple的元素变成可变参数传进去:

>>> nums = [1, 2, 3]

>>> calc(*nums)

14

 

【关键字参数】

键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict

例如:

def person(name, age, **kw):

    print('name:', name, 'age:', age, 'other:', kw)

 

 

 

 

 

 

 

 

 

 

  1. ···
  2. 读写

12

12

 

 

 

posted @ 2021-12-10 16:07  樱桃莓莓  阅读(46)  评论(0编辑  收藏  举报