【Python学习笔记1】浮点数、字符格式、输入、输出、列表、切片

一. 整数、浮点数的运算规则

  1. 整数之间的加减乘运算,结果是整数,除法运算,结果是浮点数
  2. 有浮点数的运算都是浮点数
n = 1;
m = 2;
result=m/n;
print (result,type(result)) # type()返回数据的类型

运行结果:
在这里插入图片描述
3. 浮点数计算会有误差,因为浮点数的尾数位数是有限的

二、字符串格式str

str的定义

#单引号里面的也是str类型,单双引号可以混用
str_test1 = "hhhh1"
str_test2 = 'hhhh2'
print("str_test1 is", type(str_test1),"\nstr_test1 is",  type(str_test2))
# 转义符:\ 制表符: \t 换行符: \n

运行结果:
在这里插入图片描述

str常用函数

#str的成员函数title()、upper()、lower() 
#str的成员函数,去除空格rstrip(),lstrip,strip()
str_test = "    Mail LEe     "
print("str.title=",str_test.title(),"END") 		# 首字母大写,其余小写
print("str.upper=",str_test.upper(),"END")		#大写
print("str.lower=",str_test.lower(),"END")		#小写
print("str.rstrip=",str_test.rstrip(),"END")	#去掉右边的空格right
print("str.lstrip=",str_test.lstrip(),"END")	#去掉左边的空格left
print("str.strip=",str_test.strip(),"END")		#去掉字符串前后的空格

运行结果:
在这里插入图片描述

s1 = "120"
s2 = "3.1415926"
f = float(s2) #用float()进行强制类型转换,int()函数同理
i = int(s1)
print("i+f", i+f)      
print("s1+s2", s1+s2)  #s1+s2为字符串的连接

math模块

import math  #导入一个math的模块
print(math.floor(69.3))   #向下取整
print(math.ceil(69.3))      #向上取整
print(math.sqrt(9))

from math import sqrt  #导入模块的另一种方法,这种sqrt()可以直接用的,
							#不用加math.,但会污染命令空间
print(sqrt(16))

输入

#input()永远返回str类型,需要进行强制类型转换
#input("What is your name?")

格式化输出

#格式化输出
sText = "%d个猫单价是%.2f元,%d只猫的价格是:%.1f元"%(1,100.53,2,201.06)
#     %.1f保留一位小数,%d 整数 %s字符串输出
print(sText)

运行结果:
在这里插入图片描述

列表

#列表定义ListName = [, , ],
#列表长度len(ListName)
#按下标访问ListName[],可以是ListName[-1]表示倒数第几个

"""
正序:        0 1 2 3 4 
对应倒序: -5 -4 -3 -2 -1 
"""
listTest = ["one","two", "three","four"]
print("original listTest is:",listTest)


#append()列表的成员函数 末尾加上元素
#insert( , )增加元素,insert(2 ,"male"),python里面双引号和单引号是一样的
# del ListName[2],删除 ListName[2]这个元素
#pop()函数,弹出列表尾部的函数
listTest.append("five")
print("\nafter append(\"five\")",listTest)
listTest.insert(1,"TWO")
print("\nafter insert(1,TWO)",listTest)
del listTest[2]
print("\nafter del two",listTest)
listTest.pop()
print("\nafter pop()",listTest)

运行结果:
在这里插入图片描述

#列表的嵌套类似二维数组
#列表的名字绑定,一个列表取两个名字
#list的成员函数sort()
# 排序sort(),默认升序,sort(reverse = ture)是降序
#sort(key = len),按照字符长度排序
#普通排序函数sorted(),返回新的列表,不改变原来的列表 ,不是成员函数

listTest = ["one", "two", "three", "four"]
listTest.sort(reverse = True)
print(listTest)
listTest_sorted = sorted(listTest)  #sorted()函数 调用后,不会改变原来的函数的顺序 
print(listTest)
print(listTest_sorted)


#成员函数reverse()倒序
listTest.reverse()
print("after reverse",listTest)

运行结果:
在这里插入图片描述

range(5) 相当于[0,1,2,3,4],但它是range()格式的,可以用list()可以将它转为列表
range(1,10,3)相当于[1,4,7],range(x,y,z)表示从x开始增加z,最后的结果必须小于y,不能等于y,
z可以是负数,但必须是整数
#列表统计,sum(),max(),min()
listTest = [1, 2, 4 , 8]
sum(listTest)
MaxElement = max(listTest)

#列表的快速生成
cubes = [x**3 + 100 for x in range(1,5) ]  #函数法
matrix = [[0,1]*3]*2  #乘法重复地生成矩阵
matrixFast = [[r+c for c in range(5)] for r in range(4)]
matrixFast1 = [x+y for x in "abc" for y in "123"] #双重循环,遍历字符串

#列表的运算
# + 将元素连接起来
language = ["c","c++","pascal"]
print(language + ["python", "Ruby"]) 
print([1,2] + [3,4])
# * 重复n遍

#列表的查找
print("la" in "language", "la" not in "language")

#列表的成员函数
#list.count()、list.clear()、list.append(把里面的元素直接加进去)、
#list.extend([],参数是列表,把列表拆成元素,再添加进去)
#list.index():寻找下标值,多个就返回第一个值
#list.remove():删除元素,多个就删除第一个

运行结果:
``在这里插入图片描述

#列表的复制
#等号是名字绑定,,用list.copy()进行列表的复制
#id()返回列表的地址
listTest = [4, 5, 5, 4, 5]
listCopy = listTest.copy()
listAssign = listTest
print(id(listTest), id(listAssign),id(listCopy) )
#列表listTest 和listAssign的地址相同,是同一列表的不同名称,比如:
del listAssign[0]
print(listTest)  #删除listAssign[0]后,listTest[0]也被删除了

运行结果
在这里插入图片描述

列表切片

#用切片可以方便的特定序列的列表元素
numbers = [x for x in range(10)]
print("numbers[3:9]", numbers[3:8])  #访问下标3-8,不包含8
print("numbers[3:]", numbers[3:])  #访问下标3-末尾
print("numbers[3:9:2]", numbers[3:9:2])  #访问下标3,每次加上2,不超过九
numbers[3:5] = 12,13,14  #用切片改变某些元素的值
print(numbers)

运行结果
在这里插入图片描述

常见符号

pass 占位语句,相当于C语言中的 ;空语句
 control+[  缩进快捷键
// 整除(向下取整)
+=-=/=*=  同C语言
 % 求模
 >= 、!=andornot
**  幂 同pow()函数
pow(a,b) a的b次幂
abs()绝对值
round()四舍五入
以0x开头 十六进制,hex()十六进制函数,%x 十六进制的占位符
0b二进制,bin()二进制函数
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值