栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 自学笔记 总结 1.0 变量及函数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 自学笔记 总结 1.0 变量及函数

九.格式化

格式化字符串(通过center,ljust,rjust方法做居中,左对齐和右对齐的处理,在字符串左侧补零,使用zfill方法。)

s='hello,world'
#center方法以宽度20将字符串居中并在两侧填充*
print(s.center(20,'*') )

    运行后:
        #****hello,world****
       (123456789...........)

#rjust方法以宽度20将字符串右对齐并在左侧填充空格.
print(s.rjust(20) )

    运行后:
      #         hello,world
       123456789...... .....

#ljust方法以宽度20将字符串左对齐并在右侧填充~
print(s.ljust(20,'~') )

    运行后:
        #hello,world~~~~~~~~

#在字符串左侧补0
print('33',zfill(5))

    运行后:
        #00033

print('-33',zfill(5))

    运行后:
        #-0033

print函数输出字符串

a=321
b=123
print('%d*%d=%d'%(a,b,a*b)
运行后:
#321*123=39483

字符串的方法

a=321
b=123
print('{0}*{1}={2}'.format(a,b,a*b)

 

运行后:
#321*123=39483


如需进一步控制格式化变量值形式,参考以下:

变量值占位符格式化结果说明
3.1415926{:.2f}'3.14'保留小数点后两位
3.1415926{:+.2f}'+3.14'带符号保留小数点后两位
-1{:+.2f}'-1.00'带符号保留小数点后两位
3.1415926{:.0f}'3'不带小数
123{:0>10d}'0000000123'左边补0,补够十位
123{:x<10d}'123xxxxxxx'右边补x,补够十位
123{:  >10d}'       123'左边补空格,补够十位
123{:  <10}'123       '

右边补空格,补够十位

123456789{:,  }'123,456,789'逗号分隔格式
0.123{:.2%}'12.30%'百分比格式
123456789{:.2e}'1.23e+08'科学计数法格式

 

修剪操作(将原字符串修剪掉左右两端空格之后的字符串)

S='    tuling_python@126.com    /t/r/n'
#strip方法获得字符串修剪左右两侧空格之后的字符串
print(s.strip() )

    运行后:
#tuling_python@126.com

 替换操作:replace

S='hello,world'
print(s.replace('o','@'))

    运行后:
#hell@,w@rld

print(s.replace('o','@',1))

    运行后:
#hell@,world

拆分/合并操作   split(默认空格进行拆分)

S='I love you'
words=s.split()
print(words)

    运行后:
#['I','love','you']

print('#'.join(words))

    运行后:
#I#love#you

 


不默认空格,指定其他字符拆分

S='I#love#you#so#much'
words=s.split('#')
print(words)

    运行后:
#['I','love','you','so','much']


words=s.split('#',3)
print(words)

    运行后:
#['I','love','you','so#much']

 




十.集合

常用数据结构之集合(set)

集合定义:把一定范围的,确定的,可以区别的事物当作一个整体来看待。集合中的各个事物通常称为集合的元素。

集        1.无序性:一个集合中,每个元素的地位都是相同的,元素之间是无序的。

合        2.互异性:一个集合中,任何两个元素都是不相同的。即元素在集合中只能出现一次。

特        3.确定性:给定一个集合和一个任意元素,该元素要么属这个集合,要么不属这个集                合,二者必居其一。

性 

 


 集合的运算

一.成员运算(通过成员运算in和not检查元素是否在集合中)

set1={11,12,13,14,15}        (支持数字)
print(10 in set1)                #False (说明十不在集合中)

print(15  in set1)             #True        (在集合中)


set2={'python','Java','Go','Swift'}      (支持字符串)

print('Ruby' in set2)                #False

print('Java' in set2)                #True


取反print('Ruby' not in set2)                #True

二.交并差运算

set1={1,2,3,4,5,6,7}

set2={2,4,6,8,10}


#交集

#方法一:使用&运算符

print(set1&set2)                                                #{2,4,6}

#方法二:使用inter section方法

print(set1.intersection(set2))                                #{2,4,6}


#并集

#方法一:使用 | 运算符

print(set1|set2)                                #{1,2,3,4,5,6,7,8,10}

#方法二:使用union方法

print(set1.union(set2))                                #{1,2,3,4,5,6,7,8,10}


差集

#方法一:使用——运算符

print(set1——set2)                        #{1,3,5,7}

#方法二:使用difference方法

print(set1.difference(set2))                        #{1,3,5,7}


#对称差

#方法一:使用^运算符

print(set1^set2)                        #{1,3,5,7,8,10}

#方法二:使用symmetric_difference方法

print(set1.symmetric_difference(set2))                        #{1,3,5,7,8,10}

#方法三:对称差相当于两个集合的并集减去交集

print(set1|set2)-(set1&set2))                        #{1,3,5,7,8,10}

三.比较运算

两个集合用==和!=进行相等性判断,若两个集合中元素相同,那么==比较结果为True,反之为False。

若集合A的任意一个元素都是集合B的元素,那么集合A称为集合B的一个子集,即A是B的子集,反过来也可称B是A的超集。若A是B的子集且A不等于B,那么A就是B的真子集。

set1={1,3,5}

set2={1,2,3,4,5}

set3=set2

# < 运算符表示真子集,<=运算符表示子集

print(set1

print(set2


#通过issubset方法也能进行子集判断

print(set1.issubset(set2))                #True


#反过来可用issuperset或>运算符进行超集判断

print(set2.issuperset(set1))                        #True

print(set2>set1)                        #True


集合的方法

python中的集合是可变类型,可添加或删除元素。

#创建一个空集合

set1=set (  )

#通过add单独添加元素

set1.add(33)

set1.add(55)

set1.update{1,10,100,1000}

print(set1)                                                #{1,10,33,55,100,1000}


#通过discard方法删除指定元素

set1.discard(1)

print(set1)                                                #{10,33,55,100,1000}


#通过remove方法删除指定元素,建议先做成员运算再删除

#否则元素如果不在集合中就会引发Key Error异常

if  10 in set1:

        set.remove(10)

print(set1)                                        #{33,55,100,1000}


#pop方法可以从集合中随机删除一个元素并返回元素

print(set1.pop() )


#clear方法可以清空整个集合

set.clear()

print(set1)                                        #set( )


若要判断两个集合有无相同元素可用isdisjoint方法,没有相同元素返回True,否则返回False。 

set1={'Java','Python','Go','kotlin'}

set2={'kotlin','Swift','Java','Objective_c','Dart'}

set3={'HTML','CSS','JavaScript'}

print(set1.isdisjoint(set2))                                #False

print(set1.isdisjoint(set3))                                #True 

不可变集合

Python中还有一种不可变类型的集合,名字叫frozenset.

set跟 frozenset的区别如同list跟tuple的区别。

frozenset可计算出哈希码,因此它可以作为set中的元素,除了不能添加和删除元素,frozenset在其他方面与set基本一致。

set1=frozenset({1,3,5,7})

set2=frozenset(range(1,6))

print(set1&set2)                                #frozenset({1,3,5})

print(set1|set2)                                #frozenset({1,2,3,4,5,7})

print(set1—set2)                                #frozenset({7})

print(set1




十一.函数基础 

函数基本使用

一.函数的定义

def函数名( ):

        函数封装的代码

        ……

1)def是英文define缩写

2)函数名称要表达函数封装代码的功能,以便后续调用

3)函数名称的命名应该符合标识符的命名规则

        ·可以由字母,下划线,数字组成

        ·不能以数字开头 

        ·不能与关键字重名

二.pycharm的调试工具

·F8Step Over可以单步执行代码,会把函数调用看作是一行代码直接执行

·F7Step Into可以单步执行代码,若是函数,则进入函数内部。
 

三.函数的文档注释

·在开发中,若希望给函数添加注释,可在定义函数的下方,使用连续的三对引号

·在连续的三对引号之间编写对函数的说明文字

·在函数调用位置,使用快捷键ctrl+Q可查看函数的说明信息

注:因函数体相对比较独立,函数定义的上方,应该和其他代码(包括注释)保留两个空行.

四.函数参数的使用

#关于函数的参数使用

def sum_2_num():

        num1=10

        num2=20

        res=num1+num2

        print('%d+%d=%d'%(num1,num2,res))

 

sum_2_num()                                                                #10+20=30

#当前的函数计算的值被固定的

'''

需求:

        用户可以自行传入两个值

                针对两个值进行计算

'''

def sum_2_num_1(num1,num2):

        res=num1+num2

        print('%d+%d=%d'%(num1,num2,res))

sum_2_num_1(   ,    )  

#           用户自行输入,例:50  20

                                                                                        #50+20=70

五.函数的返回值(注:return表示返回,后续代码不能被执行)

def sum_2_num(num1,num2):

        return num1+num2

        print('这是一个测试’)

#在函数中使用return后续的代码是不会被执行的,return代表当前函数已经执行完毕

#我们可以使用一个变量进行函数的返回值的接收.

res=sum_2_num(      ,      )

#                 自行输入,例:20        30

print('计算结果:%d'%res)                            #计算结果:50   (只执行return之前的操作) 

 

六.函数的嵌套调用

        ·一个函数里又调用了另外一个函数。

        ·在函数test2中,调用了另一个函数test1,则先将test1中任务执行完,才回到test2中调用test1的位置,继续执行。

#需求2   定义一个函数能够打印5行分割线且符合需求1
def print_line_1(char,num):
    print(char*num)


def print_line_2(char,num):
    row=0
    while row<5:
        print_line_1(char,num)
        row +=1


print_line_2('*',3)




运行后:
#***
 ***
 ***
 ***
 ***

 七.使用模块中的函数(模块是python程序架构的一个核心概念)

·模块好比工具包,要想使用,就需导入import这个模块。

·每一个以扩展名py结尾的python源代码文件都是一个模块。

·在模块中定义的全局变量,函数都是模块能提供给外界使用的工具。

python  笔记1.0  完

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/920563.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号