初学Python的一些收获

因为Python与c语言之间的语法很相似,所以在变量中储存信息以及使用文本和数字,在这里就不再过多赘述

先插入一个重要的概念:索引。列表是有序集合,因此要访问列表的任意元素,只需将该元素的位置(索引 )告诉 Python即可。要访问列表元素,可指出列表的名称,再指出元素的索引,并将后者放在 方括号内。

目录

列表

列表的一些关键字:

append:

insert:

del: 

pop()方法删除列表元素

remove()

sort(),reverse()对列表永久排序

sorted()对列表临时排序


列表

列表用“【】”表示。

bicycle=['treak','cannot']
print(bicycle)

['treak', 'cannot']

这就是最简单的列表形式

列表的一些关键字:

在列表同样有很多的关键字,如append,insert,pop,del等等

那么现在就由我来向你们介绍一下这些关键字的具体作用:

append:

append()方法表示在原来的列表末尾追加新的对象

A=[]
A.append('hellow')
print(A)


['hellow']

 这是append的最基本的用法

insert:

insert用于插入,这里就用到了索引的知识

A=['c','d']
A.insert(1,'徐')
A.insert(0,'佳')
print(A)

['佳', 'c', '徐', 'd']

在Python中数字都是从0开始往后数的(在没有人为规定的情况下)

del:

del 不是方法,是 Python 中的关键字,专门用来执行删除操作,它不仅可以删除整个列表,还可以删除列表中的某些元素。不仅可以删除单个元素,还能删除元素段。而且del是直接从内存中删除列表或列表元素。

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']
 
print(name1)
 
del name1
 
print(name1)
 
返回结果:
 
['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']
Traceback (most recent call last):
  File "C:/Users/Administrator/Desktop/python知识总结/python基础/9-3.删除列表元素.py", line 5, in <module>
    print(name1)
NameError: name 'name1' is not defined

这里返回的name1没有定义,表明列表已经被完全删除。

下面是删除制定索引值的元素

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']
del name1[3]
print(name1)
 
返回结果:['python', 'java', 'php', 'C++', 'C', 'C#']
 

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']

del name1[-3]

返回结果:['python', 'java', 'php', 'MySql', 'C', 'C#']

其中的【-3】表示倒叙索引删除。

下面是删除指定区间元素2

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']
 
del name1[3:5]
 
print(name1)
 
返回结果:['python', 'java', 'php', 'C', 'C#']

这里的范围为左闭右开(一般Python涉及到范围了都是这样的)即从0开始删除【3,5)区间的元素。

pop()方法删除列表元素

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'C#']
 
name1.pop(0)  # 删除第一个元素
 
print(name1)
 
name1.pop(-1)  # 删除最后一个元素
 
print(name1)
 
name1.pop()  # 默认删除最后一个元素
 
print(name1)
 
返回结果:
 
['java', 'php', 'MySql', 'C++', 'C', 'C#']
['java', 'php', 'MySql', 'C++', 'C']
['java', 'php', 'MySql', 'C++']

这便不过多赘述,看代码吧

remove()

有时候,你不知道要从列表中删除的值所处的位置。如果只知道要删除的元素的值,可使用方法remove()

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
 
name1.remove('php')
 
print(name1)
 
 
返回结果:
 
['python', 'java', 'MySql', 'C++', 'C', 'php', 'C#']

sort(),reverse()对列表永久排序

sort()排序默认为升序,reverse()则为降序。

numbers=[1,8,6,4,12]
numbers.sort()
print(numbers)

[1, 4, 6, 8, 12]

同样sort()不止可以对数字排序还可以对字母排序,来,看代码!

numbers=['a','d','e','c']
numbers.sort()
print(numbers)

['a', 'c', 'd', 'e']

sorted()对列表临时排序

numbers=[8,6,7,2,45]
print(sorted(numbers))
print(numbers)

[2, 6, 7, 8, 45]
[8, 6, 7, 2, 45]

sorted只是临时的排序,如果再次输出便会变回原来的值

len()测试列表长度

a='www.jaile.net'
len(a)

13


A=['abd','ad','d']
len(A)
print(len(A))

->3

在列表时如果想要知道列表的元素,有时一个一个数很麻烦,这时候便可以用len()语法

ages = [5,31,43,48,50,41,7]
for i in range(len(ages)):
    print(i)


0
1
2
3
4
5
6

range()生成一系列数

range()一般和for语句一起使用,常用于for i in range(1,5):

输出1-10的偶数:

A=list(range(2,11,2))
print(A)

[2, 4, 6, 8, 10]

A=(range(2,11,2))
print(A)

range(2, 11, 2)

 为什么会这样呢?观察可知两个代码少了一个list,那么list又是什么意思呢

list()用于创建数字列表

split()将字符串切片并转换为列表:

 语法:str.split(str="",num=string.count(str))[n]
参数说明:
str: 表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]: 表示选取第n个分片
注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略

s='www.dod.com.cn'
print(s.split())      ['www.dod.com.cn']
print(s.split(','))   ['www','dod','com','cn']
print(s.split(',',1))  ['www','dod.com.cn']  
print(s.split(',',2)[1])  ['dod']#分割后去第2个字符串(从0开始数)  

切片补充

如何倒叙一个列表呢

test=[3,56,6,8]
print(test[::-1])#倒叙

input如何输入多个值:

m,n=map(int,input().split( ))
输入5 6#有空格的
#还记得split的含义吗当然也可以改成
m,n=map(int,input().split(','))
输入5,6

字典,通过键值对储存的(二维表  两列多行的二维表)

字典的定义方式:

d = {"name":"lisi","age":"20",“gender”:"男"}

2、d = dict()如何访问值:通过 key 去访问 value例如:d["name"]例如:name:lisi

此时的  name  就称为   key           lisi  就称为   value,如果没有 key 会报错,通过 key 去修改 value,字典名称[key] = 新value。使用方法如下:

>>> d = {"name":"lisi","age":"19","gender":"男"}
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '男'}
>>> d["name"]
'lisi'
>>> d["gender"] = "女" 
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女'}
>>> d["phone"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'phone'


添加新的键值对:

字典名  新[key]  =  新value

方法如下:

>>> d["password"] = "123456"
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女', 'password': '123456'}


字典中常用的方法:

get() -------  通过 key 去获取 value 的值 ,如果没有该 key ,则不会有任何操作,返回None

方法如下:

>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女', 'password': '123456'}
>>> d.get("name")
'lisi'
>>> d.get("age")
'19'
keys() ------ 返回所有的建 key

方法如下:

>>> d.keys()
dict_keys(['name', 'age', 'gender', 'password'])
values() ------  返回所有的值

方法如下:

>>> d.values()
dict_values(['lisi', '19', '女', '123456'])
setdefault()  -------  设置一个默认值  和 get 的区别是,如果字典中没有这个 key 的值,会返回None的同时将该 key 添加到字典中 

方法如下:

>>> d.setdefault("phone")
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女', 'password': '123456', 'phone': None}
items() ------ 返回所有的键值对

方法如下:

>>> d.items()
dict_items([('name', 'lisi'), ('age', '19'), ('gender', '女'), ('password', '123456'), ('phone', None)])
pop() ------ 通过 key 移除键值对,如果没有这个 key 就会报错

方法如下:

dict_items([('name', 'lisi'), ('age', '19'), ('gender', '女'), ('password', '123456'), ('phone', None)])
>>> d.pop("phone")
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女', 'password': '123456'}
>>> d.pop("key")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'key'
popitem() ----- 移除键值对,根据后进先出的顺序

方法如下:

>>> d.popitem()
('password', '123456')
>>> print(d)
{'name': 'lisi', 'age': '19', 'gender': '女'}
>>> d.popitem()
('gender', '女')
>>> print(d)
{'name': 'lisi', 'age': '19'}
>>> d.popitem()
('age', '19')
>>> print(d)
{'name': 'lisi'}
如何遍历字典:

方法如下:

>>> d
{'name': 'lisi', 'age': 18}
>>> for k in d:
...     print(k,d.get(k))
...
name lisi
age 18
>>> for k in d.keys():
...     print(k,d[k])
...
name lisi
age 18
>>> for k,v in d.items():
...     print(k,v)
...
name lisi
age 18

类的创建及使用

类就是用于描述某一类事物,相当于市一个模板

如何定义一个类

定义一个类应该要有 属性和方法(所属的属性及方法一定是该类事物所共有的)
关键字class用于修饰一个类,

例如,一个人可以抽象为一个类,这个类当中包含了年龄、身高等属性。

public class Person{
     private int height;
     private int  age;      
}


这个类包含了 public、 private、class、int几个关键字。
public : 即公共的的意思,代表这个类是对外公开的。
class:即类的意思,用于修饰一个类。
private:即私有的意思,代表这个类是私有化的。
Person:在此代表类名。
height、age:字段名,在此被称为成员变量,或称为属性。
int:基本数据类型之一,代表一个整数。
结构:

修饰符 class 类名{
      修饰符 数据类型 变量名

}
自己创建的类叫自定类,该类的类名就是一个数据类型,称为引用数据类型
创建对象

格式:数据类型(类名) 变量名(对象名) = new 数据类型();
java 中实例化对象是通过 new关键字来实现的
使用对象

通过new关键字创建了对象 xiaoming 拥有 height、age两个属性
将其赋值并输出打印

public static void main(String[]args){
       Person xiaomong = new Person();
       xiaoming.height = 175;
       xaioming.age = 20;
       System.out.println("身高为:"+xiaoming.height+"年龄为:"+xaioming.age = 20;);
}

输出结果为 :身高为:175 年龄为:20

调用方法或属性: 对象名.方法名()

User user = new User();
String name = new user.name;
int age = user.age;
int height = user.height; 
System.out.println("姓名:"+name+"年龄:"+age+"身高:"+height);


 

注:(仅代表个人观点,学有不精,请指出,谢谢)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值