一、常量(*****)
常量:
what:不可以被改变的量
why:在程序运行过程中,有些值是固定的、不应该被改变
how:约定俗成是用全部大写的变量名表示常量
go语言 :
const age int=18#改了就报错,可保障代码质量
python:
AGE=18#py常量改了代码不报错,代码质量保障不了
二、基本数据类型 (*****)
1、数字类型
1.1、 int:阿拉伯数字
作用:记录个数,年龄,年,月,日,等级
1.2、float:有零有整
作用:记录价格 薪资 身高 体重
ps: int与float可混用,统称数字类型,**但都只能存一个值**
数学运算与比较运算
# age = age + 1 # print(age) # print(10 + 3.1) # print(10 * 3.1) # print(10 / 3.1) # print(10 > 3.1) # print(10 == 3.1) # print(10 >= 3.1)
2、str
定义:在''、""、""" """、''' '''内部包含一串字符
作用:记录描述性质的状态,比如名字、性别、一段话、地址、国籍
(1)所有引号的相同点:定义得到的都是str类型
(2)所有引号的不同点:
ps:三引号内的str可写多行;注意引号的嵌套 ,外层用双引号内层就要用单引号...
(3) 补充
# x = "a b" # 3个字符
# x = "aa\nbb"#
filepath1 = "C:\aaa\new.txt" #第一行打印出C:aa 第二行打印出ew.txt # \转意 \\就取消转意了 filepath2 = "C:\\aaa\\new.txt"#C:\aaa\new.txt # r代表强声明 filepath3 = r"C:\aaa\new.txt"#C:\aaa\new.txt print(filepath1) print(filepath2) print(filepath3)
3、list索引对应值,索引反映的是值的位置
定义:在[]内以逗号为分割符,按照从左到右的顺序一个一个地存放多个任意类型的值
作用:按照顺序记录多个值,优点是可以按照索引取指定位置的值
# 0 1 2 3 l=[1111,2.2222,"aaaa",[333,4444]] print(l[0]) print(l[1]) print(l[-1][1]) print(l[100])#超出最大索引位,就会报错
#注意列表中套列表,每行结尾都要用逗号分隔开 infos = [ ["egon",18,"male"], ['justin',35,"male"], ["tank",36,'female'], ] print(infos[1][1])
4、dict
与列表的相同之处:都可以存放多个任意类型的值
与列表的不同之处:字典使用key对应值,key通常是字符串类型
定义: 在{}内以逗号为分割符,存放多个元素,每个元素都是由key:value组成
其中value可以是任意类型,而key通常是字符串类型
#字典是无序的
d = {'k1':1111,"k2":2222,"k3":33333} print(d['k1'])
作用:按key:value记录多个值,优点是key对value有描述性的功能
#对比列表和字典 # 列表 info = ["egon", 18, "male"] print(info[0]) print(info[1]) print(info[2]) # 字典 info = {"name":"egon", "age":18, "gender":"male"} print(info["name"]) print(info['age']) print(info['gender'])
#字典举例 infos = [ {"name": 'justin1', "age": 35, "gender": "male"}, {"name": 'justin2', "age": 35, "gender": "male"}, {"name": 'justin3', "age": 35, "gender": "male"}, ] print(infos[1]["name"])
5、布尔类型True和False
定义 :tag = True
x = 10 y = 12 print(x == y ) print(x > y )
作用:记录真假两种状态
三、输入输出 (*****)
1、接收用户输入
python3中的input会将用户输入的任何内容都存成字符串str类型
#int只能把纯数字的字符串转换成int
# python3中input与python2中的raw_input一样
#python2中的input必须输入数据类型
inp_name=input("请输入您的用户名:") # 若输入123 打印出"123" print(inp_name,type(inp_name)) inp_age = input("请输入您的年龄:") # inp_age ="18" inp_age = int(inp_age) # 纯数字的字符串转成int print(type(inp_age)) print(inp_age + 1)
2、输出print
格式化输出:
#注意%s 可接收任意数字类型 , %d只能接收int,所以一般情况下还是用%s,不然会被写死 print("my name is %s my age is %d" % ("egon1111",18)) # print("my name is %s my age is %d" % ("egon1111",[1,2,3,]))#报错,%d只能接收int print("my name is %s my age is %s" % ("egon1111","18")) print("my name is %s my age is %s" % ("egon1111",2.5)) print("my name is %s my age is %s" % ("egon1111",[1,2,3,])) print("my name is %s my age is %s" % ("egon1111",{'name':'egon','age':18,'gender':'male'}))
#print有内置默认换行,如果不想让换行,那么在横末加上一些连接 print("1111",end=':') print("2222",end=':') #1111:2222:
3、练习
name = input("your name: ") age = input("your age: ") job = input("your job: ") hobby = input("your hobby: ") msg = """ ------------ info of %s ----------- Name : %s Age : %s Sex : %s Job : %s ------------- end ----------------- """ % (name,name, age, job, hobby) print(msg)
四、基本运算符 (*****)
1、算数运算符
了解(**)
# str+str x="aaa" y="bbb" print(x + y)#aaabbb #list+list print([1,2,3] + [4,5,])#[1, 2, 3, 4, 5] #str*int list*int x="aaa"*3 print(x) #aaaaaaaaa print([1,2,3]*3)#[1, 2, 3, 1, 2, 3, 1, 2, 3]
print(10 / 3) #除 print(10 // 3) # 地板除,取整数部分 print(10 % 3) # 取余数部分
2、比较运算符
print(10 == 10) print(10 != 3) print(10 > 3) print(10 < 3) print(10 >= 10) print(10 <= 10)
了解(**)
#str与str比较 利用的是ASCII表 # s1="abcdef" # s2="abz" # print(s2 > s1) #list与list比较,要求类别对应位的值是同一类型 l1 = [1, 'abc', 3.1] # l2 = [1, 2222, 3.1] l2 = [1, "z", 3.1] print(l1 > l2)