
Python学习笔记
慕课网python3入门教程
python3进阶教程
阿呆在发呆
这个作者很懒,什么都没留下…
展开
-
python PTA 6-2 可变参数传递 (6分)
本题要求实现一个函数,可输出姓名、出生日期、性别、国籍和电话,并根据出生日期算出岁数(需要判断是否足岁)。函数可以对输入中的错误信息进行捕获。函数接口定义:def student(name,*birth,**information)name参数是姓名,birth参数是出生年、月、日,information参数是性别、国籍和电话。裁判测试程序样例:name = input()birth = input()student(name,birth,sex='Female', nation='Chin原创 2020-12-29 16:33:10 · 421 阅读 · 1 评论 -
Python PTA冠军魔术
2018年FISM(世界魔术大会)近景总冠军简纶廷的表演中有一个情节:以桌面上一根带子为界,当他将纸牌从带子的一边推到另一边时,纸牌会变成硬币;把硬币推回另一边会变成纸牌。这里我们假设纸牌会变成等量的硬币,而硬币变成纸牌时,纸牌的数量会加倍。那么给定纸牌的初始数量,当他来回推了 N 次(来/回各算一次)后,手里拿的是纸牌还是硬币?数量是多少?输入格式:输入在一行里给出两个正整数,分别是纸牌的初始数量和魔术师推送的次数。这里假设初始状态下魔术师手里全是纸牌。输出格式:如果最后魔术师手里是纸牌,输出原创 2020-12-29 16:12:28 · 2476 阅读 · 0 评论 -
python简单爬虫-豆瓣电影
爬虫数据保存excel表或mysql数据库# -*- coding: utf-8 -*-# @Time : 2020/11/23 19:31# @Author : SHeep_o5# @File : spider.py# @Software: PyCharmfrom bs4 import BeautifulSoupimport reimport urllib.request,urllib.errorimport xlwtimport pymysqlhost='local原创 2020-12-27 19:54:47 · 349 阅读 · 0 评论 -
python实现echo服务器
实现一个echo服务器,使得client.py可以循环接收用户输入并发送给服务端,服务端在收到消息后,也把消息原样返回给client。ChatServer.pyimport socketserversocket=socket.socket()serversocket.bind(('127.0.0.1',8000))serversocket.listen(1)clientsocket,clientaddress=serversocket.accept()print('Connection fro原创 2020-11-11 22:21:17 · 630 阅读 · 0 评论 -
Python中的访问限制
并不是所有的属性都可以被外部访问的,这种不能被外部访问的属性称为私有属性。私有属性是以双下划线’__'开头的属性。# 类私有属性class Animal(object): __localtion = 'Asia'print(Animal.__localtion)Traceback (most recent call last): File "<stdin>", line 1, in <module>AttributeError: type object 'A原创 2020-11-03 22:44:13 · 941 阅读 · 0 评论 -
python类的定义与实例化
类的定义与实例化在Python中,通过class关键字定义一个类,比如我们需要定义一个人的类。按照 Python 的编程习惯,类名以大写字母开头。因此可以这样定义: class Person: pass注意,在这个Person类的定义里面,并没有继承任何类,除了这样定义以外,还可以有以下两种定义方式。 class Person(): pass class Person(object): pass在python3中,这三种定义是没有区别的,在Python2中,对于第一种定义的方法,Pe原创 2020-11-03 22:42:48 · 16380 阅读 · 0 评论 -
函数返回值
函数也可以返回多个值,在函数中,如果需要返回多个值,多个值之间使用逗号分隔即可,但是需要注意顺序。定义一个函数data_of_square,接收边长一个参数,同时返回正方形的周长和面积。def data_of_square(side): C = 4 * side S = side * side return C, SC, S = data_of_square(16)print('周长 = {}'.format(C)) # ==> 周长 = 64print('面积 =原创 2020-10-31 10:04:04 · 212 阅读 · 0 评论 -
dict
保存映射在dict中,每一项包含一个key和一个value,key和value是一一对应的d = { 'Alice': 45, 'Bob': 60, 'Candy': 75, 'David': 86, 'Ellena': 49}在定义里,我们使用花括号{}表示这是一个dict,然后key和value之间使用冒号:分割,并且每一组key:value的最后,以逗号,表示这一组的结束。d = dict()print(d) # ==> .原创 2020-10-31 09:34:07 · 279 阅读 · 0 评论 -
tuple元组
有序容器,索引,切片T=('Alice','Bob','Candy','David','Ella')#通过下标的方式进行访问print(T[0])#==>'Alice'print(T[4])#==>'Ella'#切片print(T[1:3])#==>('Bob','Candy')元组数据类型可以把不是元组的容器转换为元组,例列表L=['Alice','Bob','Candy','David','Ella']print(L)#==>['Alice','Bob原创 2020-10-28 07:46:51 · 104 阅读 · 0 评论 -
容器list
容器把多种元素放在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in,not in 等关键字判断某个元素是否在容器内。list,tuple,dict,setlist有序容器,每个元素都有一个唯一位置,称为索引(index)score=[45,60,75,86,49,100]names=['Alice','Bob','David','Ella']print(names[0])#正序print(names[1])print(names[2])print(name.原创 2020-10-28 07:47:12 · 89 阅读 · 0 评论 -
字符串切片
s = 'ABC'a = s[0] # 第一个b = s[1] # 第二个c = s[2] # 第三个print(a) # ==> Aprint(b) # ==> Bprint(c) # ==> C获取字符串的一部分(子串),这个时候采取切片的方式获取,切片需要在中括号[]中填入两个数字,中间用冒号分开,表示子串的开始位置和结束位置,并且这是半闭半开区间,不包括最后的位置。ab = s[0:2] # 取字符串s中的第一个字符到第三个字符,不包括第三个字符print.原创 2020-10-28 07:47:25 · 729 阅读 · 0 评论 -
字符串编码
在python3中,默认使用UTF-8 Unicode来进行编码,因此我们可以在python中输入任意形式的Unicode字符串s1 = '这是中文字符串's2 = 'this is an English string'print(s1)print(s2)在python3中,中文字符串和英文字符串无异...原创 2020-10-27 22:08:15 · 184 阅读 · 0 评论 -
字符串format
使用format来处理字符串,输出不固定的内容。字符串format由两个部分组成,字符串模板和模板数据内容组成,通过大括号{},就可以把模板数据内容嵌到字符串模板对应的位置。# 字符串模板template = 'Hello {}'# 模板数据内容world = 'World'result = template.format(world)print(result) # ==> Hello World如果模板中{}比较多,则容易错乱,那么在format的时候也可以指定模板数据内原创 2020-10-27 22:07:18 · 398 阅读 · 0 评论 -
raw字符串与多行字符串
如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀r,表示这是一个raw字符串,里面的字符就不需要转义了。r'\(~_~)/ \(~_~)/'但是r'...'不能表示多行字符串,也不能包含' ""的字符串如果表示多行字符串,用'''...''''''Line 1Line 2Line 3'''与下面表示方法一样'Line 1\nLine 2\nLine 3'还可以在多行字符串前面添加r,把这个多行...原创 2020-10-27 22:05:52 · 134 阅读 · 0 评论 -
字符串
'' "" 括起来表示若字符串中包含',则用""括起来a="i'm Ok"若字符串中包含",则用'括起来a='Learn "Python" now'若都包含,用/进行转义我们在前面插入一个\表示这是一个普通字符'Bob said \"I\'m OK\".'常用的转义字符还有:\n表示换行\t表示一个制表符\\表示\字符本身...原创 2020-10-27 22:04:15 · 134 阅读 · 0 评论 -
布尔类型
与运算两个都为true时,计算结果才为trueTrue or True # ==> TrueTrue or False # ==> TrueFalse or True # ==> TrueFalse or False # ==> False或运算只要有一个布尔值为 True,计算结果就是 True。True and True # ==> TrueTrue and False # ==> FalseFalse and True # =.原创 2020-10-27 22:02:53 · 2117 阅读 · 0 评论 -
整数与浮点数
整数和浮点数可以一起运算四则运算#加法num1=10num2=0.5reault=num1+num2print(result)#==>10.5#减法result=num1-num2print(result)#==>9.5#乘法result=num1*mun2print(result)#==>5#除法result=num1/num2print(result)#==>20.0(数据自动转化成了浮点型)取模运算print(3 % 2) .原创 2020-10-27 21:59:36 · 556 阅读 · 0 评论 -
定义变量的方法
合法的变量名变量名由大小写英文字母、数字和下划线_组成 变量不能用数字开头 变量尽量不要和Python关键字重合(比如前面学习过的:and、or、not,否则可能导致Python原有关键字发挥不出作用)定义变量变量名=数据a=1hello='hello'在Python里面,一个变量可以先后存储多种不同类型的数据...原创 2020-10-27 21:57:19 · 757 阅读 · 0 评论 -
基础数据类型
整数二进制:前缀0b,例0b0110十六进制:前缀0x,例0x12ef浮点数1.23*10^9=1.23e9字符串'abc',"abc"相等布尔值True,Falseand,都对为Trueor,一个对则对not单目运算符,把true变为false空值None...原创 2020-10-27 21:56:53 · 178 阅读 · 0 评论