python基本数据类型--此一篇足矣


##输入、输出
print('Thequickbrownox', 'umpsover', 'theazyog')  #print()会依次打印每个字符串,遇到逗号“,”会输出一个空格
name=input('请输入名字:')

#  数值、元组、列表、字典、字符串、集合
a=()
b=[]
c={}
d=set()
e='ni'
data=3>2 and 4>5
print(type(a),type(b),type(c),type(d),type(e),type(data),data)

#写多行内容
print('''line1 
line2
line3''')

#python中没有静态语言,只有动态语言,也就是不需要首先声明变量类型,C语言  Java语言是一种静态语言,需要先申明变量是什么类型的。
#和静态语言比,动态语言更加灵活,就是这个原因

#程序中,赋值语句先计算右侧的表达式
a=20
a=a+20
print(type(a),a)

#变量赋值。python解释器干了两件事情。
#第一件:在内存中创建一个‘ABC’的字符串
#第二件:在内存中创建名为a的变量,并指向‘ABC’
#第三件:把变量b指向a指向的数据
#第四步:在内存中创建一个‘ABC’的字符串,并把a指向XYZ
a = 'ABC'
b = a
a = 'XYZ'
print(b)


#utf-8编码方式:一种动态的分配内存大小的编码方式,可以根据需要分配内存,减少浪费。
#在计算机内存中,统一使用Unicode编码,一般为两个字节,极少数是四个字节。当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码
#还有一个是ASCLL编码,是美国人为他们姆语中的英文字母规定的编码,十进制是65,二进制是0100001,八个bit(一个字节)
#汉字 中 已经超出了ASCII编码的范围,用Unicode编码是十进制的20013,二进制的01001110 00101101
#我们从网络或者磁盘中读取到的是字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法

#应当始终坚持使用UTF-8编码对str和bytes进行转换
'中文'.encode('utf-8')
b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')

#输出格式化的字符串
#我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串
# 而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式
#如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串
nam='LFY'
month=3
huafei=35
yue=30
print('亲爱的 %s你好,你%s月的话费是%s元,余额是%s元' % (nam,month,huafei,yue))

#字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%
print('growth rate: %d %%' % 7)

#format(),保留几位小数点
print('熊明的成绩从去年的{0}分,提升到了{1}分,成绩提升了{2:.1f}%'.format(72,85,1.123))

classmate=['Michael', 'Bob', 'Tracy']
classmate.
print(classmate)

L = [
    ['Apple', 'Google', 'Microsoft'],
    ['Java', 'Python', 'Ruby', 'PHP'],
    ['Adam', 'Bart', 'Lisa']
]
# 打印Apple:
print(len(L))
# 打印Python:
print(L[1][1])
# 打印Lisa:
print(L[2][2])

#  list 数据类型  tuple数据类型  https://www.liaoxuefeng.com/wiki/1016959663602400/1017092876846880
#  list的顺序和内存中的实际顺序其实不一定完全对应。
#  条件判断:根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了

age = 12
if age >= 18:
    print('adult')
elif age >= 6:       #elif是做更细致的判断的,但是他有一个致命缺陷,就是不智能,遇到成立的就结束判断。所以判断条件的顺序要掌握好
    print('teenager')
else:
    print('kid')

s = input('birth: ')   #input返回的数据类型是str 需要转换成整数
birth = int(s)
if birth < 2000:
    print('00前')
else:
    print('00后')


# 循环:为了让计算机能计算成千上万次的重复运算,我们 需要循环
# Python的循环有两种,一种是for...in循环,依次把字符串、list或tuple中的每个元素迭代出来
names = ['Michael',1,2,3,5]
for name in names:
    print(name)

I=list(range(20))
print(I)

#第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环
#也就是说,在用while时,必须要想出一个条件

L = ['Bart', 'Lisa', 'Adam']
b=len(L)
print(b)
a=0
while a>=0:
    a=a+1
    pass

#break语句可以在循环过程中直接退出循环,而continue语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if语句使用
#要特别注意,不要滥用break和continue语句。break和continue会造成代码执行逻辑分叉过多,容易出错
#大多数循环并不需要用到break和continue语句


#字典:(key-value)  Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度,需要占用大量的内存,内存浪费多
#需要牢记的第一条就是dict的key必须是不可变对象.这个通过key计算位置的算法称为哈希算法(Hash)
#一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉
d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
k=d.get('Bob')
print(k)


a = 'abc'
b=a.replace('a', 'A')
print(a,b)


#要创建一个set,需要提供一个list作为输入集合
s1 = set([1, 2, 3])
s1.add(4)
print(s1)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值