Python3.x标准数据类型有6中,如下:
序号 | 数据类型 | 描述 |
---|---|---|
1 | 数字 | Number |
2 | 字符串 | String |
3 | 列表 | List |
4 | 元组 | Tuple |
5 | 字典 | Dictionary |
6 | 集合 | Set |
数字包括整数,浮点数,布尔数据和复数四种,python3.x中将True和False定义成关键字,表示1和0,python2.x中没有布尔类型,用1和0表示.
序号 | 数据类型 | 描述 |
---|---|---|
1 | bool | True,False |
2 | int | a=2,b=3 |
3 | float | a=2.2,b=20.5+e10,c=33.3-E22 |
4 | complex | a=4j,b=1+2j |
\
表示转义字符,如换行\n
.序号 | 数据类型 | 描述 |
---|---|---|
1 | 字符串 | ‘a’,“a”,‘abc’,’\n’ |
序号 | 数据类型 | 描述 |
---|---|---|
1 | 元组 | (‘abc’, ‘b’,234) |
序号 | 数据类型 | 描述 |
---|---|---|
1 | 列表 | li = [‘abc’,32,‘b’] |
序号 | 数据类型 | 描述 |
---|---|---|
1 | 字典 | {‘key’:‘value’} |
序号 | 数据类型 | 描述 |
---|---|---|
1 | 集合 | {‘abc’,‘b’} |
序号 | 数据类型 | 描述 |
---|---|---|
1 | 字符串,采用str()显示 | %s |
2 | 字符串,采用repr()显示 | %r |
3 | 单个字符 | %c |
4 | 二进制整数 | %b |
5 | 十进制整数 | %d |
6 | 十进制整数 | %i |
7 | 八进制整数 | %o |
8 | 十六进制整数 | %x |
9 | 指数,基底为e | %e |
10 | 指数,基底为E | %E |
11 | 指数e或浮点数(根据显示长度) | %g |
12 | 指数E或浮点数(根据显示长度) | %G |
13 | 浮点数 | %f |
14 | 浮点数 | %F |
15 | 字符"%" | %% |
def funciton_name(*argv):
print(para)
#-*-coding:utf-8-*-
#定义函数
def greet_user(user):
print(user)
#调用函数
greet_user('xindaqi')
#定义函数
def describe_pet(animal_type, pet_name):
print("Animal type is " + animal_type)
print("Animal name is " + pet_name)
#位置实参
#按照顺序赋值
describe_pet("Dog", "Li")
describe_pet("Li", "Dog")
#关键字实参
#给关键字变量直接赋值
describe_pet(animal_type="Cat", pet_name="G")
#默认值:给形参赋值
def describe_goods(goods,made='China'):
print("I want to buy " + goods + "!")
print(goods + " made in " + made)
describe_goods(goods='iPhone')
#返回值
def return_0(user, age):
info = user + " is " + age
return info
return_1 = return_0(user='xindaqi', age='22')
print(return_1)
#实参可选
def get_name(first_name, last_name, middle_name=''):
if middle_name:
full_name = first_name + ' ' + middle_name + ' ' + last_name
else:
full_name = first_name + ' ' + last_name
return full_name.title()
people_info = get_name('daqi', 'xin')
print(people_info)
people_info1 = get_name('john', 'lala', 'hi')
print(people_info1)
#返回字典
def get_name_1(first_name, last_name):
people = {
'first': first_name, 'last': last_name}
return people
people = get_name_1('daqi', 'xin')
print(people)
#实参传递列表
def get_name_2(names):
print(names)
usernames = ['xindq', 'xinxq', 'xinerqi']
get_name_2(usernames)
#函数中修改列表
for i in range(10):
print("==",end='')
print('\n')
def student_name(all_stus, new_stus):
while new_stus:
current_stu = new_stus.pop()
print(current_stu)
all_stus.append(current_stu)
def show_all_stus(all_suts):
for stu in all_suts:
print(stu)
new_stus = ['xindaqi', 'xinxiaoqi', 'xinerqi']
all_stus = []
#保持原列表
student_name(all_stus, new_stus[:])
print(new_stus)
#修改原列表
student_name(all_stus, new_stus)
print(new_stus)
show_all_stus(all_stus)
#任意数量的实参
def goods(*toppings):
for topping in toppings:
print("-" + topping)
goods('cup', 'shoes')
goods('box', 'pencil', 'paper', 'ruler')
#位置实参和任意数量实参
#函数接受不同类型实参,在函数定义时将接受任意数量实参的形参放在最后
def goods(num, *tops):
print(num)
for topping in tops:
print("-" + topping)
goods(12, 'cup', 'pencil')
#任意数量关键字实参
#**stu_info创建一个空字典,将接受的所有键-值对封装在字典中
def stu_info(first, last, **stu_info):
profile = {
}
profile['first_name'] = first
profile['last_name'] = last
for key, value in stu_info.items():
profile[key] = value
return profile
stu_info = stu_info('daqi', 'xin',
address='China',
email='[email protected]'
)
print(stu_info)
import fun
fun.goods(250, 'cup')
from fun import stu_info
stu_info = stu_info('daqi', 'xin', address='China')
from fun import *
goods(250, 'orange')
import fun as F
F.goods(250, 'breather cup')
for i in range(4):
print(i)
from six.moves import xrange
for i in xrange(4):
print(i)
0
1
2
3
【两位有效数据】
a = 1.323434
b = 20.23434
print("data: {:.2}".format(a))
print("data: {:.2}".format(b))
data: 1.3
data: 20e+01
【小数点后数字个数】
a = 1.323434
b = 20.23434
print("data: {:.2f}".format(a))
print("data: {:.2f}".format(b))
【Result】
data: 1.35
data: 20.24
a = "tainlanlan"
pirnt("data: {}".format(a))
data: tianlanlan
(1) 数据类型:
数据类型 | 实例 | 状态 | 索引 |
---|---|---|---|
列表 | [“xin”,“daqi”] | 可动态修改元素,增删 | 偏移量遍历,索引+位置 |
字典 | {“name”:“xindaqi”} | 可动态修改值 | 键值对,通过键获取数据 |
集合 | {“xin”, “daqi”} | 可动态修改(使用交,并,补集) | 不可索引 |
数字 | a=250 | 不可动态修改某个元素 | 不需索引 |
字符串 | string=“xindaqi” | 不可动态修改某一个元素 | 偏移量遍历,索引+位置 |
元组 | tup = (“xin”,“daqi”) tup1 = (“xin”,)一个元素加 , |
不可动态修改元组中的某个元素 | 偏移量索引,索引+位置 |
(2)使用函数让程序更简洁,易读,良好的函数命名规则有助于程序的测试和后期维护。建议将工程函数封装使用。
(3) range和xrange作用一致,而python3.x中xrange在six.moves中导入;
(4) format输出有效数据格式:{:.n}
,其中n为有效数据位数;
[参考文献]
[1]https://www.runoob.com/python3/python3-data-type.html
[2]https://www.runoob.com/python3/python3-module.html